如何使View填充ConstraintLayout中的所有剩余空间

我的XML如下:

android:background="#FF0000"

android:id="@+id/header"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/ic_header"

android:scaleType="fitXY"

android:adjustViewBounds="true"

app:layout_constraintTop_toTopOf="parent"

app:layout_constraintStart_toStartOf="parent"

app:layout_constraintEnd_toEndOf="parent"

app:layout_constraintHeight_default="wrap"

app:layout_constraintWidth_default="spread"/>

android:background="#00FF00"

app:layout_constraintHeight_default="spread"

app:layout_constraintWidth_default="wrap"

app:layout_constraintTop_toBottomOf="@id/header"

app:layout_constrainedHeight="true"

app:layout_constraintBottom_toTopOf="@id/footer"

android:id="@+id/task_fragment"

android:layout_width="match_parent"

android:layout_height="wrap_content"/>

android:background="#FFFF00"

android:orientation="vertical"

android:id="@+id/footer"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentBottom="true"

app:layout_constraintStart_toStartOf="parent"

app:layout_constraintEnd_toEndOf="parent"

app:layout_constraintHeight_default="spread"

app:layout_constraintWidth_default="spread"

app:layout_constraintBottom_toBottomOf="parent">

style="?borderlessButtonStyle"

android:id="@+id/btn_ar"

android:layout_height="wrap_content"

android:layout_width="match_parent"

android:padding="0dp"

android:scaleType="fitXY"

android:adjustViewBounds="true"

android:src="@drawable/ic_ar"/>

中间有页眉、页脚和FrameLayout我想用FrameLayout来填充所有剩余的空间。

我不明白,我必须使用哪些属性来展开FrameLayout。请帮帮我!

编辑:或任何布局不同的解决方案。

最佳答案:

这项工作,去与ConstraintLayout因为有更好的表现。<?xml version="1.0" encoding="utf-8"?>

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent">

android:background="#FF0000"

android:id="@+id/header"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/ic_header"

android:minHeight="30dp"

android:scaleType="fitXY"

android:adjustViewBounds="true"

app:layout_constraintTop_toTopOf="parent"

app:layout_constraintStart_toStartOf="parent"

app:layout_constraintEnd_toEndOf="parent"

app:layout_constraintHeight_default="wrap"

app:layout_constraintWidth_default="spread"/>

android:id="@+id/task_fragment"

android:layout_width="match_parent"

android:layout_height="0dp"

android:background="#00FF00"

android:orientation="vertical"

app:layout_constrainedHeight="true"

app:layout_constraintBottom_toTopOf="@+id/btn_ar"

app:layout_constraintEnd_toEndOf="parent"

app:layout_constraintHeight_default="spread"

app:layout_constraintStart_toStartOf="parent"

app:layout_constraintTop_toBottomOf="@id/header"

app:layout_constraintWidth_default="wrap">

android:id="@+id/btn_ar"

style="?borderlessButtonStyle"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:adjustViewBounds="true"

android:padding="0dp"

android:scaleType="fitXY"

android:src="@drawable/ic_ar"

app:layout_constraintBottom_toBottomOf="parent" />

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐