我有一个由布局list_item_new.xml定义的列表,其中我有一个imageView和2个textViews。 ImageView的定义如下
<ImageView
android:id="@+id/listimage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
android:src="@drawable/users2"
/>
我在3个不同的屏幕上使用相同的ListView。 现在我想要的是这个imageView上的图像对于所有3个屏幕应该是不同的。我想改变像这样的图像
LayoutInflater inflater = (LayoutInflater) this.getSystemService
(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout ll = (LinearLayout) inflater.inflate(R.layout.list_item_new, null);
listimg=(ImageView)ll.findViewById(R.id.listimage);
listimg.setImageResource(R.drawable.office);
office.png是drawable中的图片。
整个代码正在执行,但图像没有变化。请告诉我怎么做才能改变图像。我正在onCreate活动方法中编写此代码,之后我将数据分配给列表
感谢
答案 0 :(得分:1)
见这个课程
public class Adapter extends SimpleAdapter{
public Adapter(Context context, List<? extends Map<String, String>> data,
int resource, String[] from, int[] to) {
super(context, data, resource, from, to);
}
@Override
public View getView(int position, View convertView, ViewGroup parent){
View row = convertView;
if (row == null) {
LayoutInflater inflater = (LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
row ll = inflater.inflate(R.layout.list_item_new, null);
listimg=(ImageView)ll.findViewById(R.id.listimage);
listimg.setImageResource(R.drawable.office);
textView=(TextView)ll.findViewById(R.id.<textViewID>);
textView.setText("Hello");
}
return row;
}
}