我正在尝试使用CoordinatorLayout实施Google最新的设计技巧,并且在滚动和视差效果方面存在问题。
显示活动后,一切看起来都不错,但是当我尝试滚动时会出现问题。似乎底部视图未正确展开,并且在向上滚动后,空白空间将显示在下方。底部视图似乎只有在顶部视图和导航栏之间初始显示时有多大。
它看起来像这样:
相关代码:
<FrameLayout 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">
<CoordinatorLayout
android:layout_height="match_parent"
android:layout_width="match_parent">
<AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<CollapsingToolbarLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
app:expandedTitleMarginStart="72dp"
app:expandedTitleMarginEnd="16dp">
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_collapseMode="parallax"/>
</CollapsingToolbarLayout>
</AppBarLayout>
<ViewPager
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
</CoordinatorLayout>
</FrameLayout>
这种奇怪的行为是随机发生的。有时底部视图可以正常滚动,并且空白空间不会出现。我究竟做错了什么?感谢。
答案 0 :(得分:14)
我遇到了同样的问题,我发现每个有这个问题的布局都有
android:fitsSystemWindows="true"
在CoordinatorLayout上
删除它可以解决我的问题。
答案 1 :(得分:1)
尝试在您的Toolbar
内添加CollapsingToolbarLayout
:
<android.support.design.widget.CollapsingToolbarLayout>
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:minHeight="?attr/actionBarSize"
app:layout_collapseMode="pin"/>
...
</android.support.design.widget.CollapsingToolbarLayout>
还尝试添加
机器人:?=了minHeight&#34; ATTR / actionBarSize&#34;
到Toolbar
CollapsingToolbarLayout
和AppBarLayout
答案 2 :(得分:0)
对于导航标记,原因:android:fitsSystemWindows =“true”无法满足我的需求。
在玩了一些游戏之后,我发现添加另一个带有0dp hieght的CollapsingToolbarLayout可以解决问题。
<android.support.design.widget.CollapsingToolbarLayout
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_scrollFlags="scroll|snap" />