我知道如何将布局分为3或4个相等的部分,但是如何以这种方式将线性布局(水平)分为4个部分?
如您所见,零件编号“ 1”是零件“ 3”和“ 4”的3倍。
相反,部件号“ 2”是部件“ 3”和“ 4”的2倍。
我尝试过这样:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/edColore"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="4"
android:background="@android:color/white"
android:text="ARANCIONE" />
<TextView
android:id="@+id/edGiorno"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="2"
android:background="@android:color/holo_green_light"
android:text="Button" />
<TextView
android:id="@+id/edOra"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/holo_blue_light"
android:text="Button" />
<TextView
android:id="@+id/edPosizione"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/holo_red_light"
android:text="Button" />
</LinearLayout>
答案 0 :(得分:1)
您应该使用android:weightSum
定义最大重量总和。如果未指定,则总和由下式计算 添加所有子项的layout_weight。这可以用于 实例给单个孩子提供总可用空间的50% 将其的layout_weight设置为0.5,并将weightSum设置为1.0。
您的 XML 将
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="8" >
<TextView
android:id="@+id/edColore"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="4"
android:background="@android:color/white"
android:text="ARANCIONE" />
<TextView
android:id="@+id/edGiorno"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="2"
android:background="@android:color/holo_green_light"
android:text="Button" />
<TextView
android:id="@+id/edOra"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/holo_blue_light"
android:text="Button" />
<TextView
android:id="@+id/edPosizione"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/holo_red_light"
android:text="Button" />
</LinearLayout>
答案 1 :(得分:1)
尝试一下
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="10">
<TextView
android:id="@+id/edColore"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="5"
android:background="@android:color/white"
android:text="ARANCIONE" />
<TextView
android:id="@+id/edGiorno"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="3"
android:background="@android:color/holo_green_light"
android:text="Button" />
<TextView
android:id="@+id/edOra"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/holo_blue_light"
android:text="Button" />
<TextView
android:id="@+id/edPosizione"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/holo_red_light"
android:text="Button" />
</LinearLayout>
答案 2 :(得分:0)
检查此最新代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@+id/edColore"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="3"
android:background="@android:color/white"
android:text="ARANCIONE" />
<TextView
android:id="@+id/edGiorno"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="2"
android:background="@android:color/holo_green_light"
android:text="Button" />
<TextView
android:id="@+id/edOra"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/holo_blue_light"
android:text="Button" />
<TextView
android:id="@+id/edPosizione"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@android:color/holo_red_light"
android:text="Button" />
</LinearLayout>