原因:
首先OnScrollListener是焦点滚动的监听事件,需要有焦点才能响应。如果在OnScrollListener的监听咯,同样的在模拟器上使用鼠标滚轮滑动ListView导致的不响应OnScrollListener也是如此。
假设和解决办法:
如果此时listView
不要紧张,,办法是有的,接着往下看吧:
1.刚开始我采用监听notifyDataSetChanged()方法因为需要获取界面资源的原因,在ScrollView中刷新时会导致主线程的卡顿,具体原因不清楚,估计是调用notifyDataSetChanged()方法时,焦点的夺取导致了主线程卡顿,那么这种情况又不行了。
2.接着我想试试能不能自定义
最后我使出杀手锏,采用内容,自定义OnItemClickListener,那么OnItemClickListener的一个方法:
publicvoidonItemClick(AdapterView<?>arg0,Viewarg1,intarg2,longarg3){
}
此时的点击position应该是arg3,而不是arg2,因为ListView的HeadView会占用一个item。
版权声明:本文为博主原创文章,未经博主允许不得转载。
明天是世上增值最快的一块土地,因它充满了希望