您的位置:首页 > 其它

魅族手机listview适配问题

2016-03-28 19:55 190 查看
项目中使用上拉刷新下拉加载更多的listview,在魅族机器上运行的时候遇到比较奇怪的bug,和flyme的系统有关系,总结如下,希望可以帮助到没有思路的同学。

关于listview的问题主要和魅族手机的scrollview类顶部可继续下拉有关系。

1.如果你的下拉刷新有比较复杂的动画,那么魅族手机可能会让这个动画无效,需要禁用掉listview本身的下拉模式。

android:overScrollMode=”never” 或者 listView.setOverScrollMode(Listview.OVER_SCROLL_NEVER);

如此就不会对动画产生影响。

2.如果listview的子item过多,产品mm设计了一个点击回到顶部的功能,你大概会选用这个api:listview.smoothScrollToPositionFromTop(int position, int offset);

设置position和offset为0时,就可以回到顶部。但在部分手机上不会达到预期结果,只是滑动了一部分,没有回到顶部,目前已知小米和魅族。

参考stackoverflow上的回答,采用如下思路:

1.正常设置position和offset为0

2.设置滚动监听事件,如果滑动结束,则通过setSelection(0)来设置到顶部。

代码如下:
//第三个参数为滚动时间                 listView.smoothScrollToPositionFromTop(0,0,1000);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: