您的位置:首页 > 移动开发 > Android开发

Android的AadapterView组件中的几个常用实现类

2016-04-25 08:49 387 查看
Android的AadapterView组件中的几个常用实现类

   特点:1.继承了ViewGroup,本质是容器

         2.可以保存多个列表,并按合适的形式输出

         3.有Adapter提供数据投放

  Adapter接口及实现类

     1.Adapter分为ArrayAdapter,简单,易用的Adapter,用于数组或List集合的多个值包装成多个列表项

     2.SimpleAdapter可以将List集合的多个对象包装成多个列表项。

     3.SimpleCursorAdapter:不常用

     4.BaseAdapter:通常用于被扩展,可以对各列表项进行最大限度的扩展。

一:举例实现ArrayAdapter的用法

ListView list1=(关于从图形控件获取的引用量)     

String[]arr1={”张三”,”李四”,”王五”};

ArrayAdapter<String>  adapter1=new ArrayAdapter<String>(this,R.layout.array_item,arr1);

//注:第二个参数是另行创建的布局文件,而其中存放的就是每个列表项输出的形式

List1.setAdapter(adapter1);

二.举例实现SimpleAdapter的用法:

Ptivate String[] names = new String[]{“张三”,”李四”,”王五”,”马六”,”小七”};

Private String[] descs=new String[]{“一个酷酷的男孩”,”一个职业篮球人”,”一个小偷”,”一个自由职业者”,”一个经理”,”一个小职员”}

;

Private int [] images=new int[]{R.deawable.zhangsan,R.deawable.lisi,R.deawable.wangwu,R.deawable.maliiu,R.deawable.xiaoqi};

List<Map<String,Object>> listItems=new ArrayList<Map<String,Object>>;

For(int i=0;i<names.length;i++){

//建立一个map索引集合

Map<String,Object> lsitItem=new HashMap<String,Object>();

listItem.put(“header”,Images[i]);

listItem.put(“personName”,name[i]);

listItem.put(“desc”,descs[i]);

//将此索引集合作为一个整体,添加到ArrayList中,构成有序排列集合

listItems.add(listItem)

}

//创建一个SimpleAdapter

SimpleAdapter simpleAdapter=new SimpleAdapter(this,listItems,R.lay.simple_item,new String[]{”personName”,”header”,”desc”),new int []{R.id.name,R.id.header,R.id.Mylist});

list.setAdapter(simpleAdapter);

//第三个参数是布局id

//其中第4个参数因该是String[]类型的参数,该参数决定提取Map<String,?>对象中哪些key对应的value来生成列表项

//第5个参数是决定是要往哪一个子空间中添加内容

     三:ExpandableListView可展开的列表组件

对父类的各个需要实现的方法一一实现,注意childPosition和groupPosition
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: