android ListView开发问题及方法
来源:互联网 发布:手机触摸屏控制软件 编辑:程序博客网 时间:2024/05/17 22:34
今天工作时,想起一个问题,就是每次遇到的问题可以收集起来,多看几遍,就没问题了,故此,在这里收集自己工作或学习中的问题及其解决方法,现在是listview遇见的问题,后面慢慢添加,有更多的方法和简洁请回复
1.ListView和GridView滑动到顶部和底部时出现的阴影消除方法:
android2.3以前用android:fadingEdge="none"android2.3以后用setOverScrollMode(View.OVER_SCROLL_NEVER) ,
android:overScrollMode="never"
2.ListView布局更新问题
ListView.requestLayout();
3.ListView Item在垂直方向滑动居中显示
代码如下:
private int ITEM_HEIGHT=80;private int mPostion=-1;private int autoScroll=0;Runnable autoRunnable=new Runnable() {@Overridepublic void run() {mListView.smoothScrollBy(autoScroll, 300);}};//listview 滑动监听OnScrollListener mListViewScrollListener=new OnScrollListener() {@Overridepublic void onScrollStateChanged(AbsListView listview, int scrollState) {mHandler.removeCallbacks(autoRunnable);if(scrollState==0){View cureentView = mNotificationItemAdapter.getConvertView();if(cureentView!=null){int top = cureentView.getTop();autoScroll=top-mPostion;mHandler.postDelayed(autoRunnable, 50);}}}@Overridepublic void onScroll(AbsListView view,int firstVisibleItem, int visibleItemCount,int totalItemCount) {int scrollY = getScrollToY();if (mNotificationItemAdapter != null) {for (int i = 0; i < mNotificationItemAdapter.getCount(); i++) {if (scrollY >= i * ITEM_HEIGHT&& scrollY < (i + 1) * ITEM_HEIGHT- ITEM_HEIGHT / 2) {if (mPostion == i) {// 避免同一个位置不停动画return;}mNotificationItemAdapter.setSelectPostion(i);mPostion = i;break;} else if (scrollY >= i * ITEM_HEIGHT&& scrollY < (i + 1) * ITEM_HEIGHT) {if (mPostion == i + 1) {// 避免同一个位置不停动画return;}mNotificationItemAdapter.setSelectPostion(i + 1);mPostion = i + 1;}}}}};//获取滑动的y位置public int getScrollToY() {View c = mListView.getChildAt(0);if (c == null) {return 0;}int firstVisiblePosition = mListView.getFirstVisiblePosition();int top = c.getTop();int headerHeight = 0;return -top + firstVisiblePosition * c.getHeight() + headerHeight;}
0 0
- android ListView开发问题及方法
- 初学者-android开发-listview 分隔线问题 及自定义item
- ListView属性及方法android
- Android开发中的AchartEngine及ListView
- Android开发中的AchartEngine及ListView
- android ListView 应用及事件监听方法
- Android开发之ListView:setEmptyView的问题
- android开发问题及解决
- 完美解决Android里面scrollview嵌套及listview嵌套viewpager的滑动冲突问题的简单方法
- Android开发---ListView实现局部刷新及删除
- android ListView 单条刷新方法实践及原理解析
- android ListView 单条刷新方法实践及原理解析
- 【android】ListView 单条刷新方法实践及原理解析
- Android ListView 单条刷新方法实践及原理解析
- Android ListView 单条刷新方法实践及原理解析
- android ListView 单条刷新方法实践及原理解析
- android ListView 单条刷新方法实践及原理解析
- android listview 连续调用 getview问题分析及解决。
- 杭电 2553 N皇后问题 递归回溯 打表 附解题思路
- linux开机启动十步骤
- AndroidStudio 搭配 shadowSocks 下载gradle
- HDU1.1.1 A+B for Input-Output Practice (I)
- linux的mount(挂载)命令详解
- android ListView开发问题及方法
- 指针合并字符串
- Hdu 5307 He is Fly 2015ACM多校对抗赛第二场
- CentOS7安装redis数据库及php-redis扩展
- linux---------------g++的使用
- jQuery选择器
- 数据结构与算法分析 java语言描述
- hdu1312(Red and Black)
- linux将程序放到后台执行