它应该设置在AppBarLayout兄弟节点的父节点上还是在其兄弟节点内部的第一个可滚动视图中?
使用Material Design for Android,我们可以使用Views来根据布局周围的情况处理布局行为,其中之一是CoordinatorLayout,正如this CodePath guide所述:
我现在感兴趣的是:CoordinatorLayout扩展了许多Google的Material Design滚动效果的功能。目前,在此框架中提供了几种方法,使其能够在不需要编写自己的自定义动画代码的情况下工作。
- 展开或收缩工具栏或标题空间以为主要内容腾出空间。
因此,我们将使用AppBarLayout和一个Toolbar,并设置app:layout_scrollFlags
,另外还需要将另一个ViewGroup兄弟节点放置到AppBarLayout中,并设置app:layout_behavior
。
我的问题是:我们应该将app:layout_behavior
放在哪个确切的{{ViewGroup}}(或者可能是{{View}})中呢?
到目前为止,我已经尝试过以下几种方式(它们都有效,并且都是AppBarLayout的兄弟节点):
滚动视图
可滚动视图中的第一个ViewGroup
ViewGroup内部包含ScrollView
但这种方式不起作用:
- 没有可滚动视图子项的ViewGroup。
网络上有很多例子,但是它们没有真正说明应该把它放在哪里,例如:
http://www.ingloriousmind.com/blog/quick-look-on-the-coordinatorlayout/ https://guides.codepath.com/android/Handling-Scrolls-with-CoordinatorLayout https://developer.android.com/training/basics/firstapp/building-ui.html https://www.bignerdranch.com/blog/becoming-material-with-android-design-support-library/