Я использую HorizontalListView от Dev-смарт (from here) осуществлять горизонтальный вид списка изображений с подтекстом вроде этого:HorizontalListView - Пользовательский вид Image-Text
.
Проблема в том, что каждый элемент списка имеет такую же ширину, как ширина экрана. AdjustViewBounds установлен верно, но не работает ... Я получаю это:
Я пробовал: ширина
- Fix и высота изображения и convertView в методе GetView() ширина
- Фикса к изображению и RelativeLayout в XML ширина
- Фикса к ребенку в методе давала HorizontalListView в
Может быть, HorizontalListView прослушивается? Есть ли другой способ сделать это? Раньше я использовал горизонтальный ListView внутри горизонтального ListView, но это имеет проблему. Он загружает все фотографии, даже если они никогда не распиливаются.
Может кто-нибудь мне помочь? Спасибо!!
Это GetView метод моего пользовательского адаптера():
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
holder = new ViewHolder();
convertView = inflater.inflate(R.layout.item_actor, null);
holder.img = (ImageView) convertView.findViewById(R.id.actor_img);
holder.tittle = (TextView) convertView.findViewById(R.id.actor_txt);
convertView.setTag(holder);
}
else {
holder = (ViewHolder) convertView.getTag();
}
holder.img.setImageResource(R.drawable.actor_thumb);
holder.tittle.setText(getItem(position).getName());
convertView.setLayoutParams(new LayoutParams(150,190));
ImageDownloader.getInstance(mContext).download(getItem(position).getPhotoUrl(), holder.img,
R.drawable.actor_thumb);
return convertView;
}
Это мнение пункт накачиваются:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/actor_img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:adjustViewBounds="true"
android:scaleType="centerCrop"
android:src="@drawable/ic_launcher" />
<net.asturdroid.datamovie.widgets.TextViewRoboto
android:id="@+id/actor_txt"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:background="@color/text_over_image_background"
android:gravity="center"
android:maxLines="3"
android:textColor="@color/text_over_image" />
</RelativeLayout>
И это, пункт HorizontalList:
<com.devsmart.android.ui.HorizontalListView
android:id="@+id/casting_view_list"
android:layout_width="wrap_content"
android:layout_height="190dp" /* wrap_content doesn't works. */>
</com.devsmart.android.ui.HorizontalListView>
Это не совсем ясно для меня ваша вторая пуля означает, что вы пытались добавить ограничения выравнивания в пользовательский 'TextView'? То естьпопробуйте 'android: layout_alignLeft =" @ + id/actor_img "и' android: layout_alignRight = "@ + id/actor_img", чтобы привязать вертикальные кромки пользовательского вида в соответствии с настройками 'ImageView'. –
Извините, но это не сработает ... Проблема заключается в изображении, оно больше размера экрана, но на картинке, которую я опубликовал, есть прозрачные пространства в обеих сторонах из-за scaleType. Я не знаю, но adjustViewBounds игнорируется –