这是我的活动XML:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout 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"
android:background="@android:color/white"
android:fitsSystemWindows="true">
<include layout="@layout/toolbar" />
<FrameLayout
android:id="@+id/frameLayoutContainer"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
</android.support.design.widget.CoordinatorLayout>
我将frameLayoutContainer
替换为以ConstraintLayout为根的片段。它的底部有一个受app:layout_constraintBottom_toBottomOf="parent"
但是“按钮”视图位于导航栏的后面。我有许多与此活动几乎相同的结构,但是它们没有这样的问题。
当我用LinearLayout替换CoordinatorLayout时,问题已解决,但是我想知道CoordinatorLayout出了什么问题?
答案 0 :(得分:1)
第app:layout_behavior="@string/appbar_scrolling_view_behavior"
行完成了所有工作。尝试从XML文件中删除此行,即使您未将frameLayoutContainer
替换为Fragment
,也会看到问题发生。
因此,解决方案是将app:layout_behavior="@string/appbar_scrolling_view_behavior"
行添加到Fragment的根目录(以XML或以编程方式)并进行检查。