如何实现以下布局 - 中间一个固定高度视图和顶部和底部两个相等高度视图?

时间:2017-11-28 08:15:38

标签: android layout

如何在Android中实现以下垂直布局?

View1
View2
View3

所有三个视图的宽度都适合屏幕。

View2高度固定(= 100) View1身高等于view3's身高。

我可以使用LinearLayoutRelativeLayoutConstraintLayout来实现这一目标吗?

如果有一个程序化的解决方案而不是XML布局,我会很感激。

2 个答案:

答案 0 :(得分:5)

使用 LinearLayout

尝试此操作
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">


    <View
        android:layout_width="match_parent"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        android:background="@color/colorAccent"/>
    <View
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:background="@color/colorDarkBlue"/>

    <View
        android:layout_width="match_parent"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        android:background="@color/colorPrimary"/>

</LinearLayout>

<强>输出

enter image description here

答案 1 :(得分:0)

不确定这是你想要的,但你可以get screen height

减去View2's高度,只需将View1View3的高度设置为结果的一半。

您需要使用RelativeLayout并根据需要对其进行排序。