android – ViewPager里面的SwipeRefreshLayout

前端之家收集整理的这篇文章主要介绍了android – ViewPager里面的SwipeRefreshLayout前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个由工具栏和视图寻呼机组成的活动.其布局如下:

然后我将两个片段加载到视图寻呼机中.每个片段都包含自己的SwipeRefreshLayout.我将展示一个片段布局:

现在,当我运行活动时,它似乎工作.但是我注意到我是水平滑动(即转到下一个标签).它会触发swipeRefreshLayout OnRefreshListener

     mSwipeRefreshLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
            @Override
            public void onRefresh() {
                mSwipeRefreshLayout.setRefreshing(true);
                DoUpdate();
            }
        });

当我尝试刷新时,我也会遇到奇怪的视觉行为.加载标志(旋转圆圈)通常不会显示,有时会显示但仍然很小.我不确定这是否也是导致两种观点相互冲突的原因.

有什么方法可以解决这个问题.我不确定如何.也许通过将SwipeRefreshLayout限制为仅侦听垂直滑动?

任何建议将不胜感激.

最佳答案
我也有这个愚蠢的问题.它似乎是SwipeRefreshLayout中的一个错误.作为一种解决方法,我必须在Fragment.onDestroyView()方法删除其所有子视图.

public SwipeRefreshLayout mSwipeRefreshLayout;
...

@Override public void onDestroyView() {
    mSwipeRefreshLayout.removeAllViews();
    super.onDestroyView();
}

猜你在找的Android相关文章