-
activity向fragment传递参数,需要用到bundle对象来保存数据查看全部
-
动态加载fragment查看全部
-
静态加载fragment查看全部
-
fragment事务查看全部
-
(1)SimpleAdapter的构造方法中参数较多,要对应好布局文件中的id; (2)监听器和适配器是通用于很多的Android控件上,不局限于ListView; (3)本课案例通过onScrollListener监听了用户手指滑动的动作; 实际上我们常见的列表下拉刷新就是依此扩展的; (4)熟练运用notifyDatasetchanged,它可以动态更新视图中所包含的数据查看全部
-
动态滑动添加新item代码 public void onScrollStateChanged(AbsListView view, int scrollState) { switch (scrollState) { case SCROLL_STATE_FLING: //依靠惯性滑动 Log.i("Main", "用户在手指离开屏幕之前,由于用力滑了一下,视图仍依靠惯性继续滑动"); Map<String, Object> map=new HashMap<String, Object>(); map.put("pic", "R.drawable.ic_launcher"); map.put("text", "增加项"); dataList.add(map); //添加一个map simp_adapter.notifyDataSetChanged(); //刷新listview break; case SCROLL_STATE_IDLE: //停止滑动 Log.i("Main", "视图已经停止滑动"); break; case SCROLL_STATE_TOUCH_SCROLL: //手指正在滑动 Log.i("Main", "手指没有离开屏幕,视图正在滑动"); break; default: break; } } scrollState滑动状态 1.SCROLL_STATE_FLING:用户在手指离开屏幕之前,由于用力的滑了一下,视图仍以惯性进行滑动 2.SCROLL_STATE_IDLE:视图已经停止滑动 3.SCROLL_STATE_TOUCH_SCROLL:手指没有离开屏幕,视图正在滑动 滑动后要增加显示的数据 要调用simpadapter.notifyDataSetChanged();方法进行刷新查看全部
-
ListView的滚动事件: 1.onScrollStateChange(view,scrollState)... scrollState有多个状态值(int)//滚动状态 -->SCROLL_STATE_FLING : 用户在手指离开屏幕前,用力在屏幕上划了一下,视图会由于惯性往下滑。 -->SCROLL_STATE_IDLE : 视图已经停止滑动 -->SCROLL_STATE_TOUCH_SCROLL : 手指没有离开屏幕,视图在往下滑动。 2.下拉到底部,底部刷新操作: Map<String, Object> map = new HashMap<String, Object>(); map.put("image",R.mipmap.ic_launcher); map.put("text","我是拉到最下边没有之后刷新添加的"); dataList.add(map); simple_adapter.notifyDataSetChanged();//适配器对象调用notifyDataSetChange();方法,告诉UI界面更新告诉UI界面更新。 在屏幕下滑时,动态的加载入新的数据,也就是在Map中添加新的数据map.put(...),添加到SimpleAdapter初始化时用到的数据源dataList中dataList.add(map),同时适配器通知UI线程有数据更新查看全部
-
ListView---- 监听器 1、监听ListView列表项点击事件:onItemClick 2、监听ListView滚动事件,onScrollChangedListener SCROLL_STATE_FLING -> 用户在手指离开屏幕之前,由于用力划了一下,视图任然依靠惯性,继续划了一段距离。 SCROLL_STATE_IDLE -> 视图已经停止滑动。 SCROLL_STATE_TOUCH_SCROLL -> 手指没有离开屏幕,手指正带着屏幕滑动。 如果要动态修改数据,那么需要adapter.notifyDataSetChanged();如果修改了数据,而没有通知listview刷新,那么将会出错。 监听器:程序与用户(或系统的桥梁)交互桥梁 OnitemClickListener:可以处理视图中单个条目的点击事件 OnScrollListener:监测滚动的变化,可以用于视图在滚动中加载数据 实现过程: 视图直接设置监听器,在相关的实现方法中补充需要的代码即可查看全部
-
private List<Map<String,Object>>dataList; //创建一个List的对象dataList。List可以理解为链表,dataList这个链表中的元素是Map类型的元素,而Map是由String到Object的映射(由外到内理解) dataList=new ArrayList<Map<String,Object>>(); //实例化为ArrayList型(动态数组),可增加元素数量,每个元素是一个Map simp_adapter=new SimpleAdapter(this,getData(),R.layout.item,new String[]{"pic","text"},new int[]{R.id.pic,R.id.text}); //设置参数,其中getData()函数返回的值类型是List<Map<String,Object>> listView.setAdapter(simp_adapter); //绑定适配器 private List<Map<String,Object>> getData() { for(int i=0;i<20;i++) { Map<String,Object>map=new HashMap<String,Object>(); //定义的对象map类型是String到Object的映射,代表着ListView的每一个item map.put("pic",R.drawable.ic_launcher); map.put("text","imooc"+i); //键pic对应的值为R.id.pic,使用资源是R.drawable.ic_launcher dataList.add(map); //将一个item的内容添加至dataList动态数组中 } return dataList; //最后返回这个动态数组(包含全部内容) }查看全部
-
simp_adapter=new SimpleAdapter(context,data,resource,from,to); 参数: context:上下文对象。 data:由特定泛型的集合组成的数据源(List<? extends Map<String,?>>data);一个Map所组成的List集合。 每一个Map对应于ListView中的一行;每一个Map(键值对)中的键必须包含所有在from中所指定的键 resource:列表项的布局文件ID。 from:Map中键名。 to:绑定数据视图中的ID,与from成对应方向。 创建Item布局xml文件。 ======================================== private List<Map<String,Object>>dataList; dataList=new ArrayList<Map<String,Object>>();//实例化 simp_adapter=new SimpleAdapter(this,getData(),R.layout.item,new String[]{"pic","text"},new int[]{R.id.pic,R.id.text}); listView.setAdapter(simp_adapter); private List<Map<String,Object>> getData() { for(int i=0;i<20;i++) { Map<String,Object>map=new HashMap<String,Object>(); map.put("pic",R.drawable.ic_launcher); map.put("text","imooc"+i); dataList.add(map); } return dataList; }查看全部
-
(SimpleAdapter)数据适配器的实现过程: 1.新建适配器 simp_adapter=new SimpleAdapter<String>(context,data,resource,from,to); context:上下文(this) data:有特定泛型的集合数据源--一个由Map所组成的List集合 (新建自定义List<Map<String,Object>> dataList并通过方法返回在此处---详见笔记附录1) <每一个Map都会去对应列表中的一行 每一个Map中的键必须包含所有在from中所指定的键> resource:列表项的布局文件(自定义布局) from:记录Map中的键名(new String[]{布局文件的name}) to:绑定数据视图中的ID,与from成对应关系(new int[]{布局文件中ID}) 2.添加数据源到适配器(上一步已包含) 3.视图(ListView)加载适配器 listView.setAdapter(simp_adapter);查看全部
-
ArrayAdapter数组适配器: (1)用于显示基本的文字内容 (2)基本使用过程:新建适配器---创建或加载数据源---适配器加载数据源---视图加载适配器 ArrayAdapter(上下文,当前ListView加载的每一个列表项所对应的布局文件,数据源) (ArrayAdapter)数据适配器的实现过程: 1.新建适配器 arr_adapter=new ArrayAdapter<String>(上下文(this),当前ListView加载的每一个列表项所对应的布局文件(android.R.layout.simple_list_item_1),数据源(String[]arr_data={"1","2","3","4"})); 2.添加数据源到适配器(上一步已包含) 3.视图(ListView)加载适配器 listView.setAdapter(arr_adapter);查看全部
-
纯文字的采用ArrayAdapter 数组适配器,图文并茂的采用SimpleAdapter 简单适配器来实现查看全部
-
数据适配器<br> 作用:把复杂的数据(数组、链表、数据库、集合等)填充在指定视图界面上<br> ArrayAdapter(数组适配器):用于绑定格式单一的数据<br> 数据源:可以是集合或数组<br> SimpleAdapter(简单适配器):用于绑定格式复杂的数据<br> 数据源:只能是特定泛型的集合<br> <br> 数据适配器是链接数据源和视图界面的桥梁。 实现过程: 新建适配器->添加数据源到适配器->视图加载适配器查看全部
-
ListView 作用:android系统中显示列表的控件 ListView控件 (每一个ListView都可以包含很多个列表项)查看全部
举报
0/150
提交
取消