如何用可用空间填充FrameLayout中的2个视图

时间:2018-11-29 18:24:28

标签: android android-layout

我有2个视图。我希望2个视图填充屏幕,就像使用LinearLayout一样。视图1应该位于右上角,并且应该较小。我需要FrameLayout,因为在此之上我有更多的视图,所以这个问题是关于如何使它与FrameLayout一起使用的。

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/videoScreen"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <View
        android:id="@+id/view1"
        android:layout_width="match_parent"
        android:layout_height="400dp"
        android:layout_gravity="bottom"
        android:background="@android:color/holo_red_dark" />

    <View
        android:id="@+id/view2"
        android:layout_width="100dp"
        android:layout_height="110dp"
        android:layout_gravity="top|end"
        android:background="@android:color/holo_blue_bright" />

</FrameLayout>

对于Nexus 4,它可以工作,但对于其他解决方案,则不能: enter image description here

1 个答案:

答案 0 :(得分:0)

像这样吗?

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/videoScreen"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <View
            android:id="@+id/view2"
            android:layout_width="100dp"
            android:layout_height="110dp"
            android:layout_gravity="end"
            android:background="@android:color/holo_blue_bright" />

        <View
            android:id="@+id/view1"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:background="@android:color/holo_red_dark" />
    </LinearLayout>

</FrameLayout>