我正在尝试实施其中一个Scrolling Techniques,灵活空间,内容重叠,在Material Design中有所描述。
内容重叠的灵活空间
内容可以与应用栏重叠。
行为:
应用栏的起始位置应位于内容后面。 向上滚动时,应用栏应滚动得比内容快, 直到内容不再重叠。一旦锚定到位, app栏抬起以允许内容滚动到下方。
然而,问题是, 我的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");
我希望工具栏(包含瓷砖和其他内容,稍后我将添加)保持在顶部,无论appbar是展开还是折叠。
我已经阅读过这些文档,经历了很多帖子和教程,观看过很多视频但却未能找到可行的解决方案或任何相关的解决方案。
如果有人对如何解决这个问题有所了解,请提出建议。谢谢你的帮助。
答案 0 :(得分:61)
当我在类似问题报告的评论中找到答案时,我一直在寻找解决方案。
基本上,您在System.out.printf("%4d", 1 << (j - 1));
上拨打setTitleEnabled()
,就像这样:
CollapsingToolbarLayout
您也可以在xml中执行此操作,方法是将其添加到CollapsingToolbarLayout.setTitleEnabled(false);
:
CollapsingToolbarLayout
通过将其设置为app:titleEnabled="false"
,您将获得所需的行为。标题保持固定在屏幕顶部。
false
本身实际上已经位于顶部,但这也使标题保持在那里,而不是在Toolbar
和CollapsingToolbarLayout
的底部之间进行翻译。
答案 1 :(得分:4)
我通过在Toolbar
标记内添加以下代码来实现此目的。
app:layout_collapseMode="pin"
答案 2 :(得分:3)
在我的情况下,我需要将app:titleEnabled="false"
添加到CollapsingToolbarLayout
和 app:layout_collapseMode="pin"
android.support.v7.widget.Toolbar
现在,无论用户是向上还是向下滚动,工具栏都会固定在屏幕顶部。
答案 3 :(得分:0)
要保持标题排行,只需将此属性添加到您的CollapsingToolbarLayout
:
app:expandedTitleGravity="top"