gpt4 book ai didi

android - SwipeRefreshLayout 拦截与 ViewPager

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:58:57 24 4
gpt4 key购买 nike

我有一个 ViewPager 包裹在 SwipeRefreshLayout 中。有时,当我向左/向右滑动时,SRL 会被触发。这主要发生在我位于 fragment 顶部时。

我该如何解决这个问题?我是否需要监听某种事件才能在特定时间内禁用 SRL?我还没有真正找到任何相关信息,所以我怀疑这是谷歌的一个实际错误,而是我是否错误地实现了某些事情?对此有什么想法吗?

这是我的布局:

<android.support.v4.widget.SwipeRefreshLayout
android:id="@+id/mainSwipeContainer"
android:layout_width="wrap_content"
android:layout_height="match_parent">

<android.support.v4.view.ViewPager
android:id="@+id/mainViewPager"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />

</android.support.v4.widget.SwipeRefreshLayout>

谢谢!如果我遗漏了任何信息,请告诉我。

最佳答案

我设法解决了它:

mainViewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(mainTabLayout) {
@Override
public void onPageScrollStateChanged(int state) {
toggleRefreshing(state == ViewPager.SCROLL_STATE_IDLE);
}
});

你的 toggleRefreshing() 应该看起来像这样:

public void toggleRefreshing(boolean enabled) {
if (swipeRefreshLayout != null) {
swipeRefreshLayout.setEnabled(enabled);
}
}

关于android - SwipeRefreshLayout 拦截与 ViewPager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35769170/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com