ListView子条目横向滑动&&ViewPager嵌套

来源:互联网 发布:nginx 添加第三方模块 编辑:程序博客网 时间:2024/05/21 10:53

很简单,只需要字条目布局使用HorizontalScrollView即可。
注意事项:
一:HorizontalScrollView作为ListView的子条目的话会永远的霸占着焦点,所以ListView无论是设置itemclickListener还是在adapter中设置converView设置onClickListener都不会起作用;
二:把HorizontalScrollView的各个子控件设置上点击监听是没有任何问题的,这样等于变相的设置了ListView的字条目的点击监听

下面的是在最外层又嵌套了ViewPager的笔记
首先HorizontalScrollView作为ListView的子条目的话会永远的霸占着焦点,所以ListView无论是设置itemclickListener还是在adapter中设置converView设置onClickListener都不会起作用
其次HorizontalScrollView和ViewPager的滑动肯定会冲突,所以在滑动上只能二选一。由于HorizontalScrollView一直在抢占这焦点,所以不作任何处理的情况下是HorizontalScrollView的滑动生效,只有手指触碰到item之间的缝隙的时候才能滑动viewpager

总结:
第一:重写HorizontalScrollView的onTouchEvent方法且永远返回false
①ViewPager可以正常滑动了
②HorizontalScrollView不能滑动
③HorizontalScrollView中的hide,item,delete三个控件设置clickListener能够获得监听
④ListView的adapter中设置converView设置onClickListener能够获得监听,但是ListView设置itemclickListener不能获得监听
⑤第三条和第四条可以根据业务来选择使用哪一种
第二:使用原生的HorizontalScrollView
①:你在布局中必须放弃ViewPager,只能做一个纯粹的子条目可以横向滑动的listview
②:无论是ListView的adapter中设置converView设置onClickListene还是ListView设置itemclickListener都会失败
③:HorizontalScrollView中的hide,item,delete三个控件设置clickListener能够获得监听
④:如果你坚持不放弃ViewPager,那么就是HorizontalScrollView可以正常滑动,只有手指触碰到ListView的子条目间的缝隙的时候才能滑动ViewPager。
这里写图片描述

0 0
原创粉丝点击