<?xml version="1.0" encoding="UTF-8"?>
1
上海酒店
2
瑞吉酒店
3
餐厅
for(int i=0;i {
HashMap pMap=new HashMap();
pMap.put("picture",R.drawable.icon);
pMap.put("name", "name"+i);
programeList.add(pMap);
}
SimpleAdapter adapter=new SimpleAdapter(this,programeList,R.layout.list_item, new String[]{"channelPicture","pr"}, new int[]{R.id.img,R.id.name});
listView.setAdapter(adapter);
有每个餐厅的图片,解析xml得到餐厅名,怎样把餐厅的的图片加到listview的每个item中
显示成:
餐厅图片1 上海酒店
餐厅图片2 瑞吉酒店
餐厅图片3 餐厅
你需要重写SimpleAdapter来自定义一个adapter来处理。
不能直接字符串给ImageView的。
在自定义的Adapter中的getView里
可以使用
ImageView.setImageDrawable(Drawable d)来处理。
具体改为自己的变量名。
整体布局两列。一列是图片,一列是listview。 只要图片的和listview的row对齐。
我这是笨方法,也许有更好的。
为item定义一个布局文件,类似下面这样的
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_marginTop="2dip"
android:background="@android:color/transparent"
>
<ImageView
android:id="@+id/imageview_item"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingRight="5dip"
android:layout_gravity="center"
/>
android:id="@+id/textview_item"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingRight="5dip"
android:textColor="#ffffff"
android:layout_gravity="center" />
然后自定义adapter
class TestAdapter extends BaseAdapter {}
如楼上,先定义item的布局文件,再自己定义一个adpter,在adpter的getView方法中把你解析的图片一个一个的赋给imageview。