1. 怎么解决android listview 单个item的左右滑动和整个listview上下滑动的冲突问题
你是listView把滑动事件截取了,然后item就不能响应滑动了吗?这样可以重写listView,重写onInterceptTouchEvent()
2. Android ListView 折叠要怎么弄
个人思路:
Listview 设置适配器的时候,多加2个参数,1、折叠数据(你这里用string[]就好)2、是否折叠
在getview里面判断折叠数据大小,
如果有数据,显示右边的图标按钮;
如果有数据并且不折叠,将string[]内的数据添加到list中;
给图标加一个监听,第二次点击则将是否折叠取反操作,如果折叠状态为true,需要删除list中刚刚添加的string[]数据再刷新
3. Android中使用listview出现数据紊乱
ListView的Item child view个数是最多能显示的item数+2。
也就是说,假设你当前看到ListView的item数最多是9, 那这个ListView其实最多只有11个child view, 但ListView可能有几十几百个Item, 怎么办呢?
当你向下滑动的时候, 把第12个item滑出来的时候,事实上第1,2个item已经完全看不到了,所以第12个Item是重用第1个Item的view, 第13个item是重用的第2个Item的view,也就是ListAdapter.getView()中作为参数传入的convertView。
这样明白了吧, 针对第1个Item view,如果你给里面的控件设置了一些属性,那么当你滑动listview的时候,第12个item上也会是一样的item view。
So, 两种办法:
1) 在ListAdapter.getView()这个方法中, 每次都是重新创建一个view return。
2)在ListAdapter.getView()这个方法中,还是会重用convertView,但是每次都要重新去初始化convertView的属性。
4. Android listview滑动事件和上拉加载下拉刷新冲突
这个支持上拉加载下拉刷新的ListView,你是在android的ListView基础上修改的?(通过onScrollListener)还是用的第三方开源库?(PullTorRefresh之类)
轮播图片又用的是什么?ViewPager吗?
没有代码参考,我也只能笼统的猜下
如果你用的是某些别人写的,继承自ListView的类,那l可能是这个类本身的上拉加载下拉刷新,就是利用内部创建onScrollListener实例,然后通过setScrollListener的方式设置给自己来实现的,所以你设置新的onScrollListener可能替换掉了原来默认的监听器
另外也可能是手势的事件冲突。而一般手势事件冲突,有可能是由于手势事件,在到达规定的View之前,就被被上层View“消耗”(拦截并处理)了。这种情况你可以写个类继承你现在ListView,重写dispatchTouchEvent,onInterceptTouchEvent,onTouchEvent方法,里面直接调用父类的同名方法,但在之前输出个Log,跟踪下手势事件去向
(参考android手势事件处理机制,不清楚的话,可以看下网上针对dispatchTouchEvent,onInterceptTouchEvent,onTouchEvent这三块的详细讲解)