ListView,GridView 和 Activity跳转 的 总结

ListView的简单使用

  1. 摆出一个ListView
  2. 需要一个数据适配器: ArrayAdapter或者SimpleAdapter
  3. 初始化 ArrayAdapter或者SimpleAdapter。
  4. LIstView加载适配器
//ArrayAdapter使用于纯文字的列表
//其中ArrayAdapter的构造函数
/*
 *ArrayAdapter(上下文,当前ListView加载的每一项所需要对应的布局文件,数据源(数组))
 */
String[]arr={
  "one","two","three","four","five"};
ArrayAdapter<T> arr_adapter=new ArrayAdapter<>(this,R.layout.simple_list_item1,arr);
listview.setAdapter(arr_adapter);



//SimpleAdapter适用于比较复杂的ListView格式,类似于商品的图片+文字之类的。
//其中SimipleAdapter的构造函数
/*
 *SimpleAdapter(context,data,resource,from,to)
 *context:上下文
 *data:数据源,是List<? extends Map<String,?>>,data中的每个map,都需要有一个
      以from中所有字符串为key,to中所有Object为value的 pair<String from from,Object from       to>.
 *resource:是布局文件,代表ListView中的每一项所遵循的布局,可以是系统的,也可以是你自己写的。
 *from:字符串数组
 *to:int数组,绑定数据视图中的id,人话:你的布局文件中所有元素的id所构成的int数组
 *所以from数组和to数组是一一对应,相当于映射
 *所以data中的map元素,只需要跟from数组的对应即可,因为from与to一一对应。
 *data中的map元素的value相当于资源,放什么文字,放什么图片,都是它控制的。
 */

//比如现在,我规定ListView中每一个都有一个ImageView和一个TextView
String[] from={
  "picture","text"};
int[] to={R.id.iv1,R.id.tv1};
List < Map<String,Object> > data=ArrayList<>();

for(int i=0;i<20;i++){
  Map<String,Object> map=new Map<>();
  map.put("picture",图片所在位置);
  map.put("text","this is "+i);
  data.add(map);
}

SimpleAdapter sim_adapter=new SimpleAdapter(this,data,布局文件,from,to);
listview.setAdapter(sim_adapter);


//而写商品列表,可以用RelativeLayout尝试一下


  1. 对ListView的每一项的点击事件设置监听器,和对ListView的滚动状态设置监听器。

    //对于ListView,单个条目的点击事件对应的监听器是 OnItemClickListener
    
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值