Adapter的三种类型解析

一.ArrayAdapter

   处理单一的文本信息

布局用 android.R.layout.simple_expandable_list_item_1

ListView listView=findViewById(R.id.list_view1);
String []data ={aa,bb,cc,...};
ArrayAdapter adapter=new ArrayAdapter(Content:this,R.layout.item,data);
//参数1:环境上下文this,参数2代表数据项所应用的布局,参数3数据源(数组)。
listView.setAdapter(Adapter);

//其中R.layout.item最外层用TextView包裹,因为需将data中的数据在此布局中展示出来。

二.SimpleAdapter

 

//实例化数据源data
Private List<Map<String,Object>> data=new ArrayList<>();


--------------------------------------------------------------------------
//获取ListView对象
ListView listView2=findViewById(R.id.list_view2);
//实例化适配器对象
//参数1:this;
//参数2:数据源;
  initDate(); 
//参数3:每一项布局;
//参数4:from表示数据来源的key组
  String  [] from={"img","name","mood"};
//参数5:to表示数据去向的id数组
  int to={R.id.qq_img,R.id.qq_name,R.id.qq_mood};
//参数45对应索引上,from数组的元素代表数据源每个map的key,该key所指代的
//数据会作为to数组对应索引上id所代表的控件的内容显示处理。
SimpleAdapter adapter=new SimpleAdapter(this,data,R.layout.iten_3,from,to);

//为ListView设置适配器
listView2.setAdapter(adapter);
----------------------------------------------------------------------------

public void initDate(){
Map<String,Object>   map1=new HashMap<>();

ma1.put(k:"img",v:"R.mipmap.houyi");
ma1.put(k:"name",v:"后羿");
ma1.put(k:"mod",v:"happy");

data.add(map1);
....
//添加多组map数据,,并添加到data中。
}

三.BaseAdapter

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值