1.ViewHolder ViewHolder用何种修饰,ViewHolder初始化的次数是相同的,值为当前界面可见item+1,和concertView 的次数是一样的
2.设置ListView的分割线 (1)android :divider= “@android:color/drak_gray” (设置ListView的分割线和它的高度) android : dividerHeight = "10dp" (2)android divider = “@null”设置分割线为透明
3.隐藏ListView的滚动条 android scrollbars = "none"
4.取消ListView的Item的点击效果 android:listSeletor = “#000000”/android : listSelector = "@android :color/transparnet"
5.设置ListView需要显示在第几页 listView.setSelection(N) 其中N是需要显示的第N个item (瞬间完成)

listView.smoothScrollBy(distance,duration);(平滑移动) listView.smoothScrollByOffset(offset); listView.smoothScrollToPosition(index)
6.Adapter的notifyDateSetChanged()方法 在使用该方法时必须保证传进Adapter的数据List是同一个List而不是其他对象,否则将无法实现该效果
7.遍历ListView中所有的Item for(int i = 0;i<listView.getChildCount();i++ ){ View view = listView.getChildAt(i); }
8.处理空ListView setEmptyView(),可以设置一个空数据下显示的默认提示
9.ListView的滑动监听 onTouchListener是View的监听事件 listView.setOnTouchListener(new View.OnTouchListener(){ @Override public boolean onTouch(View v,MontionEvent event){ switch(event.getAction()){ case MotionEvent.ACTION_DOWN: //触摸时的操作 break; case MotionEvent.ACTION_MOVE: //移动时的操作 break; case MotionEvent.ACTION_UP: //离开时的操作 break; } retuirn false; } })
onScrollListener是A表示ListView中的监听事件 listView.setOnScrollListener(new OnScrollListener(){ @Override public void onScrollStateChanged(AbsListView view,int scrollState){ switch(scrollState){ case OnScrollListener.SCROLL_STATE_IDLE: //滑动停止时 break; case OnScrollListener.SCROLL_STATE_TOUCH_SCROLL: //正在滑动时 break; case OnScrollListener.SCROLL_STATE_FLING: //手指抛动时,即手指用力滑动时 break; } } @Override public void onScroll(AbsListView view, int firstVisibleItem, //当前看到的第一个Item的Id(从0开始) int visibleItemCount,//当前看到的Item int totalItemCount)整个ListView的Item总数 })
注意,当前看到的Item的总数包括没有显示完整的Item 判断是否滚动到最后一行 if(firstVisibleItem + visibleItemCount = = totalItemCount$$totalItemCount>0){ //滚动到最后一行 } 判断滚动方向(通过lastVisibleItem记录上一次开始Item的Id) if(firstVisibleItem >lastVisibleItem){ //上滑 }else if(firtVisible<lastVisibleItem){ //下滑 } firstVisibleItem = lastVisibleItem ; 获取科可视区域内最后一个Item的Id listView.getLastVisiblePosition()
获取可视区域的第一个Item的Id listView.getFirstVisiblePosition();

更多相关文章

  1. android实现标题栏、状态栏图标文字颜色及背景动态变化
  2. 【Android】Android处理Home键方法小结
  3. Android(安卓)Studio--报错日记
  4. Android去掉标题,强制设置横屏或竖屏
  5. Android(安卓)HorizontalScrollView 水平滑动 在listview上面动
  6. Android设置权限问题
  7. Android中的DownloadManager
  8. android中 检查网络连接状态的变化,无网络时跳转到设置界面
  9. Android(安卓)动态添加View 并设置id

随机推荐

  1. Traefik 2 基础授权验证(后篇)
  2. Traefik 2 基础授权验证(前篇)
  3. 算术运算符和表达式
  4. hello 51cto
  5. 如何制作和使用自签名证书
  6. 更简单的 Traefik 2 使用方式
  7. NUC 折腾笔记 - Linux 系统篇
  8. 久等了,全球第二大浏览器终于支持这项重要
  9. 从封装 Nginx NJS 工具镜像聊起
  10. 使用 Docker 和 Nginx 打造高性能二维码