过完暑假就大三了,闲来没事自己看了安卓的书,其中讲到了如何定制listview。
他首先新建类Fruit(显示水果名字及图片为例)包含两个私有的成员变量String name和int imagedID,以及构造函数和两个return私有成员变量的函数。
书中接下来说到:然后需要为ListView的子项制定一个我们自定义的布局,在layout目录下新建fruit_item.xml,代码巴拉巴拉巴拉...
接下来自定义了一个适配器继承自ArrayAdapter,并将泛型指定为Fruit类,新建类FruitAdapter
public class FruitAdapter extends ArrayAdapter<Fruit>{
private int resourceId;
public Fruitdapter(Context context,int textViewResourceId,List<Fruit> objects){
super(centext,textViewResourceId,objects);
resoureId=textViewResourceId;
}
public View getView(int position, View convertView, ViewGroup parent){
Fruit fruit=getItem(position);
View view=LayoutInflater.from(getContext()).inflate(resourceId,parent,flase);
ImageView fruitImage=(ImageView) view.findViewById(xxxxxxxx);
TextView fruitName=xxxxxxxxxxx;
fruitImage.setImageResource(fruit.getImageId());
fruitName.setText(fruit.getName());
return view;
}
}在这个过程中,是如何将Listview和布局绑定的?难道是在MainActivity中对适配器进行初始化的时候绑定?
小弟有所不懂,希望老哥解答~
他首先新建类Fruit(显示水果名字及图片为例)包含两个私有的成员变量String name和int imagedID,以及构造函数和两个return私有成员变量的函数。
书中接下来说到:然后需要为ListView的子项制定一个我们自定义的布局,在layout目录下新建fruit_item.xml,代码巴拉巴拉巴拉...
接下来自定义了一个适配器继承自ArrayAdapter,并将泛型指定为Fruit类,新建类FruitAdapter
public class FruitAdapter extends ArrayAdapter<Fruit>{
private int resourceId;
public Fruitdapter(Context context,int textViewResourceId,List<Fruit> objects){
super(centext,textViewResourceId,objects);
resoureId=textViewResourceId;
}
public View getView(int position, View convertView, ViewGroup parent){
Fruit fruit=getItem(position);
View view=LayoutInflater.from(getContext()).inflate(resourceId,parent,flase);
ImageView fruitImage=(ImageView) view.findViewById(xxxxxxxx);
TextView fruitName=xxxxxxxxxxx;
fruitImage.setImageResource(fruit.getImageId());
fruitName.setText(fruit.getName());
return view;
}
}在这个过程中,是如何将Listview和布局绑定的?难道是在MainActivity中对适配器进行初始化的时候绑定?
小弟有所不懂,希望老哥解答~
解决方案 »
- Android蓝牙通信是怎么获取串口数据?请做过蓝牙通信的高手们帮忙看一下
- 流泪求达人进来看看……添加联系人的界面如何去得到用户在文本框里输入的文字?
- andriod 和 android 是指同一个平台吗
- 寻北京的朋友
- android1.6和2.1 获取联系人邮件地址和通信地址方法
- 按键效果
- android客户端与widget的比较
- Android开发一个豆瓣app,报net.oauth.OAuthProblemException
- 安装Genymotion时出错,求大神指导该怎么做
- android7.0 app闪退
- android端将手机相册里的照片上传到服务器,照片在的内存扩大几倍,是怎么回事?
- 这个怎么解决啊?新手求教
如果你说的是listview如何与item的布局文件绑定,就是通过getview()的View view=LayoutInflater.from(getContext()).inflate(resourceId,parent,flase);方法将布局获取到的
你的这个写法并不标准.http://www.cnblogs.com/zhengbeibei/archive/2013/05/14/3078805.html 这里看标准写法
public View getView(finalint position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.item, null); //首次使用,则需要使用item的布局来创建view
holder = new ViewHolder();
/*得到各个控件的对象*/
holder.title = (TextView) convertView.findViewById(R.id.ItemTitle);
holder.text = (TextView) convertView.findViewById(R.id.ItemText);
holder.bt = (Button) convertView.findViewById(R.id.ItemButton);
convertView.setTag(holder);//绑定ViewHolder对象
}
else{
holder = (ViewHolder)convertView.getTag();//取出ViewHolder对象
}
/*设置TextView显示的内容,即我们存放在动态数组中的数据*/
holder.title.setText(getDate().get(position).get("ItemTitle").toString());
holder.text.setText(getDate().get(position).get("ItemText").toString());
return convertView;
}