你好关于 android listview怎么加载自定义布局,还必须是在代码里面写 你是怎么解决的呀
展开全部
算定义一个相应布局的my_lv_layout.xml,然后在代码中加载这个my_lv_layout.xml到listView中。
代码片断如下:
SimpleAdapter adapter = new SimpleAdapter(this, datas//为List<Map<String, Object>>数据,
R.layout.my_lv_layout,//你算定义的listview布局的layout
new String[] { "floorNum",
"roomCount", "floorId" },//datas中每个Map<String, Object>的key数组
new int[] {
R.id.ran_floornum_val_tv, R.id.ran_roomcount_val_tv,
R.id.ran_floorid_val_tv });//你自定义的my_lv_layout.xml中的所有viewId数组
mListView.setAdapter(adapter);
希望对你有帮助。
(PS:如果你要的是你自定义的布局都要动态生成的话,那么度娘或者google下相应的资料,这里就不详说了。)
代码片断如下:
SimpleAdapter adapter = new SimpleAdapter(this, datas//为List<Map<String, Object>>数据,
R.layout.my_lv_layout,//你算定义的listview布局的layout
new String[] { "floorNum",
"roomCount", "floorId" },//datas中每个Map<String, Object>的key数组
new int[] {
R.id.ran_floornum_val_tv, R.id.ran_roomcount_val_tv,
R.id.ran_floorid_val_tv });//你自定义的my_lv_layout.xml中的所有viewId数组
mListView.setAdapter(adapter);
希望对你有帮助。
(PS:如果你要的是你自定义的布局都要动态生成的话,那么度娘或者google下相应的资料,这里就不详说了。)
追问
关键我这个是动态布局 还很复杂 我的天呀
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public class thisAdapter extends BaseAdapter{
private LayoutInflater inflater;
public AppAdapter(Context context){
this.inflater = LayoutInflater.from(context);
}
public int getCount() {
// TODO Auto-generated method stub
return 20;//这里是listView的长度,20表示有20个item
}
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View view;
view = inflater.inflate(R.layout.xiangce_item, null);//view就是item,你可以根据position判断view该用哪个布局
return view;
}
}
list.setAdapter(new thisAdapter);
private LayoutInflater inflater;
public AppAdapter(Context context){
this.inflater = LayoutInflater.from(context);
}
public int getCount() {
// TODO Auto-generated method stub
return 20;//这里是listView的长度,20表示有20个item
}
public Object getItem(int position) {
// TODO Auto-generated method stub
return position;
}
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View view;
view = inflater.inflate(R.layout.xiangce_item, null);//view就是item,你可以根据position判断view该用哪个布局
return view;
}
}
list.setAdapter(new thisAdapter);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用适配器啊 自己写一个继承自baseAdapter的适配器 里面的布局都可以是用自己的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询