(转)Android 屏蔽/禁止ListView,GridView的滑动/滚动功能
2017-12-05 10:57
417 查看
原地址:http://blog.csdn.net/baiyulinlin1/article/details/52179552
一、简介
在某些情况下,由于项目的需求(比如说九宫格、六宫格、用listview代替一个Linearlayout),可能需要用到禁止Listview或者Gridview的滚动功能,这里能给出两种解决的方案:
(1)自定义view,重写dispatchTouchEven方法(网上没人提到,其实这样用会有一个弊端,就是MotionEvent.ACTION_MOVE被禁止后,移动触摸的事件将会失效,事实上,所有的button和item的点击事件都能通过触摸后移动来取消这个事件。也就是说,这么写后,这个隐性的功能就没了,点击事件将无法取消。手感和用户体验将会下降。)
[java] view
plain copy
public boolean dispatchTouchEvent(MotionEvent ev) {
if (ev.getAction() == MotionEvent.ACTION_MOVE) {
return true; // 禁止GridView滑动
}
return super.dispatchTouchEvent(ev);
}
(2)不需要自定义view,但是需要固定item的数量和高度,然后设置gridview.setOverScrollMode(View.OVER_SCROLL_NEVER)就可以了(不得不说,固定item的数量和高度是非常有必要的,毕竟已经不能滚动了,超出的屏幕的item将毫无意义
一、简介
在某些情况下,由于项目的需求(比如说九宫格、六宫格、用listview代替一个Linearlayout),可能需要用到禁止Listview或者Gridview的滚动功能,这里能给出两种解决的方案:
(1)自定义view,重写dispatchTouchEven方法(网上没人提到,其实这样用会有一个弊端,就是MotionEvent.ACTION_MOVE被禁止后,移动触摸的事件将会失效,事实上,所有的button和item的点击事件都能通过触摸后移动来取消这个事件。也就是说,这么写后,这个隐性的功能就没了,点击事件将无法取消。手感和用户体验将会下降。)
[java] view
plain copy
public boolean dispatchTouchEvent(MotionEvent ev) {
if (ev.getAction() == MotionEvent.ACTION_MOVE) {
return true; // 禁止GridView滑动
}
return super.dispatchTouchEvent(ev);
}
(2)不需要自定义view,但是需要固定item的数量和高度,然后设置gridview.setOverScrollMode(View.OVER_SCROLL_NEVER)就可以了(不得不说,固定item的数量和高度是非常有必要的,毕竟已经不能滚动了,超出的屏幕的item将毫无意义
相关文章推荐
- Android 屏蔽/禁止ListView,GridView的滑动/滚动功能
- Android listview 嵌套 gridview (滑动控件的嵌套使用)
- 【Android界面实现】整合了刷新、加载更多、滑动删除功能的XListview
- Android 仿美团,使用ViewPager+GridView实现左右滑动查看更多分类的功能
- Android:ListView、ArrayAdapter、ListView属性、获取listview行对象、滚动滑动
- ------------------Android中对GridView, ListView等滚动控件的Touch事件onInterceptTouchEvent,onTouchEvent了解
- Android viewpage实现禁止滑动的功能
- android ScrollView嵌套listView gridView 引发的自动滑动问题
- Android 仿美团网,探索使用ViewPager+GridView实现左右滑动查看更多分类的功能
- 【Android界面实现】整合了刷新、加载更多、滑动删除功能的XListview
- android实现ListView或GridView中item的倒数功能
- Android编程实现ListView滚动提示等待框功能示例
- Android ScrollView嵌套GridView或者ListView的时候,页面自动滚动到GridView或者ListView所在位置的问题
- Android 监听ListView、GridView滑动到底部
- Android - 禁止Gridview滚动
- Android之禁止GridView上下滑动
- android ListView/GridView与ScrollView嵌套的滑动冲突解决
- Android 仿美团网,探索使用ViewPager+GridView实现左右滑动查看更多分类的功能
- GridView和ListView禁止滑动
- android 关于 ScrollView嵌套GridView,ListView 显示和滑动的问题