温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

厦门海关贸易通APP新闻滑动tab下拉刷新bug解决

发布时间:2020-07-11 13:46:12 来源:网络 阅读:603 作者:愚人cc 栏目:移动开发

在厦门海关贸易贸易通APP一期接近收尾阶段,发现一个bug:滑动tab下拉刷新页面,当新闻listView滑下来时,再往下滑,无法上滑,而是直接刷新的bug,如下图。

厦门海关贸易通APP新闻滑动tab下拉刷新bug解决


解决:


  1. 在adapter、activity、fragment三个文件多处打log后将问题锁定在

ViewPagerFragment 中的checkCanDoRefresh()的最后return返回值始终为true。厦门海关贸易通APP新闻滑动tab下拉刷新bug解决针对性打log发现getFirstVIsiblposition和getChildAt(0).getTop(),这个两个值始终为0,估计是某个事件拦截了ListView的这两个属性。

2. 于是在initView中监听mListView的滚动事件

mListView.setOnScrollListener(new OnScrollListener() {

@Override

public void onScrollStateChanged(AbsListView view, int scrollState) {

// TODO Auto-generated method stub

//Log.e("ViewPagerFragment_scrollStateChanged", "scrollState:"+scrollState);

Log.e("ViewPagerFragment_scrollStateChanged", "mListView.getChildAt(0).getTop():"+mListView.getChildAt(0).getTop());

getTop=mListView.getChildAt(0).getTop();

}

@Override

public void onScroll(AbsListView view, int firstVisibleItem,

int visibleItemCount, int totalItemCount) {

mfirstVisibleItem=firstVisibleItem;


然后用成员×××变量mfirstVisibleItem、getTop,代替getFirstVIsiblposition和getChildAt(0).getTop(),问题解决。


该滑动下拉刷新tab原型参考我博客中100+Android 开源项目分类汇总一(精品 )第三个开源项目android-Ultra-Pull-to-Refresh。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI