ListView在开发中是一个很普遍的控件,工作了一段时间有必要总结一下控件使用的步骤和小细节了。
效果图:
步骤一:清单文件中声明该控件
<ListView
android:id="@+id/lv_processinfos"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
></ListView>
步骤二:在Activity中找到该控件,并初始化
声明该控件
private ListView lv_processinfos;
初始化控件
lv_processinfos=(ListView) findViewById(R.id.lv_processinfos);
步骤三:由于该控件是按照MVC模式进行的设计,所以需要设置它的适配器
lv.setAdapter(new BaseAdapter() {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
TextView tv=new TextView(getApplicationContext());
tv.setText("我是ListView");
tv.setTextColor(color.holo_blue_dark);
return tv;
}
@Override
public int getCount() {
return 10;
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public Object getItem(int position) {
return null;
}
});
适配器的参数是ListAdapter接口,所以需要继承他的子类BaseAdapter ,其中最重要的两个方法getView()和getCount()。一般只需要修改这两个方法里面的返回值。就能达到所需要的效果。
但是如果仅仅是这样,你在滑动的时候会出现OOM(Out Of Memory)的异常。 这是因为我们在加载每个listview中的item时,没有进行复用,每次加载新的Item都是重新创建对象,然后加载,所以造成内存溢出 所以还需要进行复用view对象这样就不会出现问题。