Android布局随子布局动态添加
我已经尝试了很多次,但我似乎无法修复我的布局。我有没有办法实现这个目标 上图是有一个孩子和两个孩子时发生的情况。 下图是我想要实现的目标 这是我的父xml:Android布局随子布局动态添加,android,xml,android-layout,Android,Xml,Android Layout,我已经尝试了很多次,但我似乎无法修复我的布局。我有没有办法实现这个目标 上图是有一个孩子和两个孩子时发生的情况。 下图是我想要实现的目标 这是我的父xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/parent" android:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/parent"
android:layout_width="match_parent"
android:layout_height="@dimen/height"
android:orientation="horizontal">
<RelativeLayout
android:id="@+id/flow_container"
android:layout_width="match_parent"
android:layout_height="title_container_height"
android:gravity="center_vertical">
<TextView
android:id="@+id/flow_title"
style="@style/TileTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="TEXT" />
</RelativeLayout>
<LinearLayout
android:id="@+id/linear_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_gravity="center_horizontal"
android:orientation="vertical">
</LinearLayout>
</RelativeLayout>
id为
线性布局的父线性布局设置为垂直方向,因此子视图将从上到下排列
尝试将您的子xml更改为
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/primary_icon_section"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_weight="1"
android:orientation="vertical">
<ImageView
android:id="@+id/primary_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:paddingBottom="@dimen/small"
android:paddingTop="@dimen/small"/>
<TextView
android:id="@+id/primary_sub_text"
style="@style/Style"
android:layout_width="wrap_content"
android:layout_height="18dp"
android:layout_gravity="center_horizontal"
android:textColor="@color/white"
tools:text="Primary sub text"/>
</LinearLayout>
以及您的parent.xml作为
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/parent"
android:layout_width="match_parent"
android:layout_height="@dimen/height"
android:orientation="horizontal">
<RelativeLayout
android:id="@+id/flow_container"
android:layout_width="match_parent"
android:layout_height="title_container_height"
android:gravity="center_vertical">
<TextView
android:id="@+id/flow_title"
style="@style/TileTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="TEXT" />
</RelativeLayout>
<LinearLayout
android:id="@+id/linear_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_gravity="center_horizontal"
android:orientation="horizontal">
</LinearLayout>
</RelativeLayout>
将id为的父线性布局设置为垂直方向,因此子视图将从上到下排列
尝试将您的子xml更改为
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/primary_icon_section"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_weight="1"
android:orientation="vertical">
<ImageView
android:id="@+id/primary_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:paddingBottom="@dimen/small"
android:paddingTop="@dimen/small"/>
<TextView
android:id="@+id/primary_sub_text"
style="@style/Style"
android:layout_width="wrap_content"
android:layout_height="18dp"
android:layout_gravity="center_horizontal"
android:textColor="@color/white"
tools:text="Primary sub text"/>
</LinearLayout>
以及您的parent.xml作为
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/parent"
android:layout_width="match_parent"
android:layout_height="@dimen/height"
android:orientation="horizontal">
<RelativeLayout
android:id="@+id/flow_container"
android:layout_width="match_parent"
android:layout_height="title_container_height"
android:gravity="center_vertical">
<TextView
android:id="@+id/flow_title"
style="@style/TileTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:text="TEXT" />
</RelativeLayout>
<LinearLayout
android:id="@+id/linear_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_gravity="center_horizontal"
android:orientation="horizontal">
</LinearLayout>
</RelativeLayout>
要实现目标,你需要做两件事:
将线性布局
的方向
从垂直
更改为水平
,使添加方向正确
将孩子的线性布局
宽度
更改为0dp
,并将其布局_重量
更改为1
希望这能对你有所帮助。你需要做两件事来实现你的目标:
线性布局
的方向
从垂直
更改为水平
,使添加方向正确线性布局
宽度更改为0dp
,并将其布局_重量
更改为1
希望这能帮到你。很高兴我能帮上忙……)很高兴我能帮上忙……)