底部的CoordinatorLayout视图对齐

时间:2019-06-05 21:05:13

标签: android android-layout android-coordinatorlayout

我有以下主要布局文件

<?xml version="1.0" encoding="utf-8"?>
<layout 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">
    <data>
        .....
    </data>

    <android.support.design.widget.CoordinatorLayout
        android:id="@+id/mainView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity">

        <android.support.design.widget.AppBarLayout
            android:id="@+id/appBar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <include
                layout="@layout/view_main_toolbar"
                android:layout_width="match_parent"
                android:layout_height="@dimen/toolbar_height"
                app:layout_scrollFlags="scroll|enterAlways|snap"
                app:viewModel="@{toolbarViewModel}" />
        </android.support.design.widget.AppBarLayout>

        <android.support.v4.view.ViewPager
            android:id="@+id/viewPager"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:layout_behavior="@string/appbar_scrolling_view_behavior" />

        <include
            layout="@layout/chromecast_mini_controller_stub"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom" />

    </android.support.design.widget.CoordinatorLayout>
</layout>

包含的布局是

<?xml version="1.0" encoding="utf-8"?>
<ViewStub xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/castMiniControllerStub"
    android:inflatedId="@+id/castMiniController"
    android:layout="@layout/chromecast_mini_controller"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:visibility="gone" />

和android:layout =“ @ layout / chromecast_mini_controller”是

<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/castMiniController"
    class="com.google.android.gms.cast.framework.media.widget.MiniControllerFragment"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:visibility="gone" />

在运行时,当所包含的布局膨胀时,它似乎与ViewPager的底部重叠(android:id =“ @ + id / viewPager”) 通过重叠,我的意思是,viewpager在后面,而所包含的布局项目在顶部(与父容器的底部对齐)。

我希望包含的视图在ViewPager下方“对齐”。我尝试过如下所示的include标记,但它仍未出现在ViewPager下方。

<include
            layout="@layout/chromecast_mini_controller_stub"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom"
            app:layout_anchor="@id/viewPager"
            app:layout_anchorGravity="bottom|end"/> 

如何使包含的布局显示在ViewPager“下方”?我的意思是,所包含的布局不应在Viewpager的底部重叠,而应位于ViewPager的下方。

0 个答案:

没有答案