Я пытаюсь создать комбинированный макет, используя CoordinatorLayout, а также CollapsingToolbarLayout.
В первом состоянии, когда мы находимся на самой верхней странице и еще не прокручивались, я хочу, чтобы панель инструментов расширилась, как показано ниже (да, я сделал это):
Во втором состоянии, когда начинается прокрутка вниз, изображение и панель инструментов должны исчезнуть, как показано ниже (отображается только вкладка):
И в последнем состоянии, когда я нахожусь в какой-то точке списка (но не в верхней части списка), я хочу начать прокрутку вверх, как только я начну прокручивать вверх, я хочу, чтобы панель инструментов (а не развернутая с изображением) была начните whowing, как показано ниже (если не дошел до вершины списка, изображение не будет отображаться, только панель инструментов):
Мне удалось достичь первого состояния, но два других состояния проблематичны, поскольку после того, как панель инструментов будет реализована внутри CollapsingToolbarLayout, гибкость того, что я могу делать с ней за пределами компонента CollapsingToolbarLayout, не ясна. Я не могу скрыть панель инструментов, если я это сделаю, она будет отображаться только после того, как я достигну вершины.
В любом случае мой текущий XML (показанный ниже) находится в состоянии, в котором реализовано первое изображение, но как только я начинаю прокручивать вниз, панель инструментов остается наверху и не скрывается. Примечание: я должен сказать панели инструментов, чтобы она оставалась «закрепленной», потому что, если я этого не сделаю, информация внутри панели инструментов исчезнет, и будет отображаться только пустая панель инструментов (это для другого сообщения, но все еще интересно узнать, почему это произошло?) .
вот мой текущий xml:
<android.support.design.widget.CoordinatorLayout
android:id="@+id/benefit_coordinator_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar_material_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.design.widget.CollapsingToolbarLayout
android:id="@+id/main.collapsing"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:contentScrim="?attr/colorPrimary"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
>
<include
android:id="@+id/toolbar_search_container"
layout="@layout/search_box"
android:layout_height="192dp"
android:layout_width="match_parent"
app:layout_collapseMode="parallax"
/>
<include
android:id="@+id/toolbar_benefit"
layout="@layout/toolbar_main"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:contentScrim="?attr/colorPrimary"
/>
</android.support.design.widget.CollapsingToolbarLayout>
<android.support.design.widget.TabLayout
android:id="@+id/benefit_tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/primaryColor"
app:tabIndicatorColor="@color/accentColor"
app:tabSelectedTextColor="@android:color/white"
app:tabTextColor="@android:color/black"
app:tabIndicatorHeight="4dp" />
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/benefit_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
<include
layout="@layout/floating_btn_benefits"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:layout_margin="16dp"
/>
</android.support.design.widget.CoordinatorLayou