4.listview中baseadapter怎么写ListView初步了解 在ListView的使用中 , 有时候还需要在里面加入按钮等控件 , 实现单独的操作 。
也就是说 , 这个ListView不再只是展示数据 , 也不仅仅是这一行要来处理用户的操作 , 而是里面的控件要获得用户的焦点 。读者可以试试用SimpleAdapter添加一个按钮到ListView的条目中 , 会发现可以添加 , 但是却无法获得焦点 , 点击操作被ListView的Item所覆盖 。
这时候最方便的方法就是使用灵活的适配器BaseAdapter了 。使用BaseAdapter必须写一个类继承它 , 同时BaseAdapter是一个抽象类 , 继承它必须实现它的方法 。
BaseAdapter的灵活性就在于它要重写很多方法 , 看一下有哪些方法 。步骤一 List的使用数据源可以有多种形式 , 比如是一个数组 , 或者是一个list 其作用是使lisview中每一行显示出数据源的每一个元素的值 。
比如ListView中每一个item只有一个控件 TextView 则list可以定义成一个字符串数组 , 或者一个ArrayList。如果ListView中每一个item有很多个控件 , 则可以把多个控件的值类型定义成一个类如Item类 格式如下public class Item{ String name; String text; int number; int imageId; //省略setter和getter方法}则此时List定义成List 并且初始化为List- listItems = new ArrayList<>();并赋予值如下for(int i = 0 ; i < 10 ; i ++){ Item item = new Item(); item.setName("sqf"); item.setText("Hello World"); item.setNumber(i); item.setImageId( R.drawable.ic_launcher); listItems.add(item);}或者将多个控件的值的类型包装成Map , 改成如下格式:List