当AppBar崩溃/展开时,如何将工具栏固定在顶部?

概观

我正在尝试实现“材质devise”中所述的滚动技术之一 , 具有重叠内容的灵活空间

灵活的空间与重叠的内容

内容可以重叠应用程序栏。

行为:

应用栏的起始位置应位于内容的后面。 在向上滚动时,应用栏应滚动得比内容更快,直到内容不再重叠为止。 一旦锚定到位,应用程序栏就会升起,以允许内容在下面滚动。

https://www.google.co.in/design/spec/patterns/scrolling-techniques.html#scrolling-techniques-scrolling


问题

但问题是,我的AppBar中的标题在展开时向下滚动并隐藏在重叠内容下面。

在这里,我的工具栏隐藏在重叠的CardView下面。 当appbar扩展

当appbar被折叠时,工具栏和标题从下向上滑动。 当崩溃

这是我的代码:

活动的main.xml中

<android.support.design.widget.CoordinatorLayout ... android:layout_width="match_parent" android:layout_height="match_parent"> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="200dp" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout ... android:layout_width="match_parent" android:layout_height="match_parent" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:layout_gravity="top" android:background="?attr/colorPrimary" app:layout_collapseMode="pin" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" /> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <android.support.v4.widget.NestedScrollView android:layout_width="match_parent" android:layout_height="match_parent" ... 

我也添加了这些在我的MainActivity的onCreate函数

  setSupportActionBar(toolbar); collapsingToolbarLayout.setTitle("App Name"); 

我想要的工具栏(与瓷砖和其他内容,我会稍后添加)留在顶部,而不pipeappbar被展开或折叠。

我已经阅读了文档,阅读了许多文章和教程,观看了很多video,但是根本没有find可行的解决scheme或者任何相关的解决scheme。

如果有人对如何解决这个问题有一些想法,请build议。 感谢您的帮助。

Solutions Collecting From Web of "当AppBar崩溃/展开时,如何将工具栏固定在顶部?"

当我在类似的问题报告的评论中find答案时,我正在寻找解决scheme。

基本上你可以像这样在你的CollapsingToolbarLayout上调用setTitleEnabled()

 CollapsingToolbarLayout.setTitleEnabled(false); 

您也可以在xml中执行此操作,方法是将其添加到CollapsingToolbarLayout

 app:titleEnabled="false" 

通过将其设置为false ,您将获得所需的行为。 标题保持固定在屏幕的顶部。

Toolbar本身实际上已经在顶部,但是这使标题停留在那里,而不是在CollapsingToolbarLayout的底部和Toolbar之间进行翻译。

我已经通过在Toolbar标签内添加下面的代码来实现这一点。

 app:layout_collapseMode="pin"