ListView在开发中是一个很普遍的控件,工作了一段时间有必要总结一下控件使用的步骤和小细节了。


效果图:


android listview 自定义分割线 android中listview_android


步骤一:清单文件中声明该控件


<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对象这样就不会出现问题。