所以我在Activity中使用CoordinatorLayout,如..
<CoordinatorLayout>
<AppBarLayout>
<Toolbar/>
</AppBarLayout>
<FrameLayout> // For Fragments
</CoordinatorLayout>
Toolbar
使用scroll|enterAlways
作为Scrollflags
。
在一个特定的片段中,我想在布局上实现视差效果,并再次使用CoordinatorLayout
,但这会导致工具栏无法正常运行。
以下是我在Fragment
布局中使用它的方法:
<CoordinatorLayout>
<AppBarLayout>
<CollapsingToolbarLayout>
<Toolbar/>
</CollapsingToolbarLayout>
</AppbarLayout>
<RelativeLayout/> // Contains the Fragment's content
</CoordinatorLayout>
如何实现这两种效果?这是不可能的,因为Fragment
的{{1}}拦截了这个事件?
因此工具栏隐藏在滚动上,我需要使用滚动视差效果隐藏搜索功能
答案 0 :(得分:0)
我没有尝试过,但是this gist似乎是一种正确的方法,因为它增加了一个CoordinatorLayout的滚动子能力,也可以向上调度滚动。
<强>更新强>
尝试删除方法offsetChildToAnchor
,因为它在包外不可见。
然后找到forked gist修复了滚动管理问题,并将NestedScrollingEnabled
设置为true。
在嵌套的CoordinatorLayout上添加了app:layout_behavior="@string/appbar_scrolling_view_behavior"
。
在没有片段的活动上测试嵌套两个CoordinatorLayouts。有用。并且也应该使用片段。