我有一个CoordinaterLayout,用于折叠工具栏。CoordinatorLayout具有SwipeRefreshLayout 的父级
<SwipeRefreshLayout>
<CoordinatorLayout>
<AppBarLayout>
...
</AppBarLayout>
<NestedScrollView>
...
</NestedScrollView>
</CoordinatorLayout>
</SwipeRefreshLayout>
我按照这个答案来使用SwipeRefreshLayout进行滑动https://stackoverflow.com/a/30785823
是的,我看到有人说把刷新布局放在嵌套滚动之上,但是对于这个用例,我希望刷新嵌套布局内容以及应用程序栏内容
但是我遇到了一个问题当你滑动刷新并进行到一半时,刷新微调器正在显示,但刷新尚未触发,当你向下滚动时,屏幕不会滚动,而是刷新微调器会一直卡在那里,直到你把手指从屏幕上移开。
以下是我产生此错误的步骤:
- 向下滑动,使刷新微调器出现,但不要松开
- 向上滑动,就好像要向下滚动屏幕一样
编辑:我以前在TradeMe应用程序上看到过当你查看商品时使用过这种方法,但我不知道他们是怎么做的https://play.google.com/store/apps/details?id=nz.co.trademe.trademe&hl=en-
尝试在SwipeRefreshLayout
中只封装NestedScrollView
,而不是CoordinatorLayout
。
<CoordinatorLayout>
<AppBarLayout>
...
</AppBarLayout>
<SwipeRefreshLayout>
<NestedScrollView>
...
</NestedScrollView>
</<SwipeRefreshLayout>>
</CoordinatorLayout>