Ответ 1
Проверьте эту ссылку: https://developer.android.com/reference/android/support/design/widget/AppBarLayout.html.
AppBarLayout
также требует отдельного скроллинга, чтобы узнать, когда прокручивать. Связывание выполняется с помощью классаAppBarLayout.ScrollingViewBehavior
, что означает, что вы должны настроить поведение прокрутки как экземплярAppBarLayout.ScrollingViewBehavior
. Доступен строковый ресурс, содержащий полное имя класса.
Они упомянули об этом, это должен быть View
который будет показан в AppBarLayout
следующим образом:
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior">
<!-- Your scrolling content -->
</android.support.v4.widget.NestedScrollView>
<android.support.design.widget.AppBarLayout
android:layout_height="wrap_content"
android:layout_width="match_parent">
<android.support.v7.widget.Toolbar
...
app:layout_scrollFlags="scroll|enterAlways"/>
<android.support.design.widget.TabLayout
...
app:layout_scrollFlags="scroll|enterAlways"/>
</android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>
Мой вопрос: в какой точной
ViewGroup
(или, возможно, вView
) мы должны поместить этоapp:layout_behavior
?
И в этой ссылке: http://guides.codepath.com/android/Handling-Scrolls-with-CoordinatorLayout
Затем нам нужно определить связь между
AppBarLayout
и View, которая будет прокручиваться. Добавьтеapp:layout_behavior
вRecyclerView
или любой другой вид, способныйNestedScrollView
прокрутку, такую какNestedScrollView
. Библиотека поддержки содержит специальный строковый ресурс@string/appbar_scrolling_view_behavior
который сопоставляется сAppBarLayout.ScrollingViewBehavior
, который используется для уведомленияAppBarLayout
когда события прокрутки происходят на этом конкретном представлении. Поведение должно быть установлено в представлении, которое вызывает событие.