首页 > 代码库 > .Net程序员玩转Android开发---(15)ListView滚动事件
.Net程序员玩转Android开发---(15)ListView滚动事件
Android中的ListView 可以上下滑动,并且上下活动可以分页加载数据,这一节我们看下ListView的滚动事件.
ListView的滚动事件主要通过setOnScrollListener监听器来实现,主要包括两个方法onScroll和onScrollStateChanged方法,onScrollStateChanged主要用来监听滚动状态
在滑动过程中向ListView添加数据 ,ListView滚动的时候主要有三个状态,SCROLL_STATE_TOUCH_SCROLL ,SCROLL_STATE_FLING,SCROLL_STATE_IDLE
lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0,View arg1, int arg2, long arg3) { TextView tname= (TextView)arg1.findViewById(R.id.tvname);//名称 TextView tmodel= (TextView)arg1.findViewById(R.id.tvmodel);//规格 TextView tprice= (TextView)arg1.findViewById(R.id.tvprice);//单价 TextView tcode= (TextView)arg1.findViewById(R.id.tvcode);//编码 Toast.makeText(getApplicationContext(),"当前商品 名称:"+tname.getText()+",编码:"+tcode.getText(),30).show(); } }); lv.setOnScrollListener(new OnScrollListener(){ @Override public void onScroll(AbsListView arg0, int arg1, int arg2, int arg3) { // TODO Auto-generated method stub } @Override public void onScrollStateChanged(AbsListView arg0, int arg1) { // TODO Auto-generated method stub 滚动状态监听器 if(arg1==AbsListView.OnScrollListener.SCROLL_STATE_TOUCH_SCROLL) { //手指没有离开屏幕,正在滑动 Toast.makeText(getApplicationContext(),"手指没有离开屏幕,正在滑动",30).show(); Map<String,Object> map=new HashMap<String,Object>(); map.put("code","编码:10"); map.put("name","名称:Ipad"); map.put("price","价格:22"); map.put("model","单位:22"); mapList.add(map); //adp.notifyDataSetChanged(); SimpleAdapter sAdapter = (SimpleAdapter)lv.getAdapter(); sAdapter.notifyDataSetChanged(); } else if(arg1==AbsListView.OnScrollListener.SCROLL_STATE_FLING) { //手指离开屏幕之前,用力滑动了一下 Toast.makeText(getApplicationContext(),"手指离开屏幕之前,用力滑动了一下",30).show(); } else if(arg1==AbsListView.OnScrollListener.SCROLL_STATE_IDLE) { //停止滑动 Toast.makeText(getApplicationContext(),"停止滑动",30).show(); } } });
.Net程序员玩转Android开发---(15)ListView滚动事件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。