我有一个自定义工具栏和非选项卡式ViewPager的活动。我的目标是允许工具栏滚动/隐藏,当我在viewPager中水平滚动片段时,我在工具栏中添加了app:layout_scrollFlags="scroll|enterAlways"
。但是,这只会隐藏工具栏,当我平移工具栏,而不是滚动viewPager时。所以我想也许工具栏没有从ViewPager中选择滚动事件,所以我将viewPager包装在NestedScrollView
中。这工作,但它现在不允许我滚动viewPager的整个长度。任何指针任何人?如何允许滚动工具栏与包含水平scrollView的非标签viewPager?
注:我viewPager片段观点都包含一个滚动视图,允许水平滚动
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main_content"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true">
<android.support.design.widget.AppBarLayout
android:id="@+id/app_bar_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/view_case_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:layout_scrollFlags="scroll|enterAlways"
app:popupTheme="@style/AppTheme.PopupOverlay"/>
</android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
</android.support.design.widget.CoordinatorLayout>
这几乎和我刚刚修改的'android:fitsSystemWindows =“false”'一样,但工具栏仍然没有隐藏在这个配置中。 (只隐藏当我滑动工具栏而不是视图寻呼机) –
“我的目标是允许工具栏滚动/隐藏,当我在viewPager水平滚动片段” - 这是行不通的。我的解决方案将在垂直滚动“ViewPager”的内容时工作。你必须实现你自己的'CoordinatorLayout.Behavior'并将其分配给'Toolbar'。 –