code学习

Android---ListView控件用法

首先要使用ListView是要自定义一个适配器类的,先简单分析一下适配器怎么写:

示例程序是要使用ListView列表显示出水果的图片以及对应的水果文字描述(水果名字)。

public class FruitAdapter extends ArrayAdapter<Fruit>{    };

一般类这样定义,继承自一个ArrayAdapter类(Fruit是自定义的一个数据类)。

 首先里面定义一个

private int resourceId;
这样的值,整个项目有两个布局文件,一个activity_main,另一个是fruit_item
其中在activity_main里定义了一个<ListView>控件      
<ListView
    android:id="@+id/list_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>      
那么刚刚定义的resourceId就是用来接收fruit_item整个文件的,这个文件在被选择的时候,是会被分配一个整型的标识符。

在这个类里面首先要定义适配器的构造函数,把要适配的数据传入这里      
public FruitAdapter(Context context, int textViewResourceId, List<Fruit> objects){
    super(context,textViewResourceId,objects);
    resourceId=textViewResourceId;//初始化刚刚定义的私有变量      
之后要重写一个方法getView();      
public View getView(int position, View convertView, ViewGroup parent){}      
里面有三个参数,第一个position是获取当前项的一个实例,也就是说Fruit实例
第二个convertView 参数用于将之前加载好的布局进行缓存
第三个是说这个数据页面要以哪一个页面为父页面。      
整个过程简单一点来说就是,把一组数据放到new出来的一个适配器里面,然后获取一个页面的ListView的id,然后      
listView.setAdapter(adapter);把这个放好数据的适配器用setAdapter()方法给获取到的ListView赋值。      

作者:​​靠谱杨​​​

我可能不是天才,但我会努力成为人才。

更多日常分享尽在我的VX公众号:小杨的挨踢IT生活

继续阅读