1
我想爲我的佈局添加一個簡單的水平分隔線(對此使用View)。使用LinearLayout中的match_parent的高度來查看wrap_content的高度正在破壞佈局
現在的問題是,視圖似乎是在整個佈局的高度,而不僅僅是其內部的LinearLayout。它內部的LinearLayout具有wrap_content的高度。
這裏是我的佈局看起來像以前一樣添加這些分隔:
,這裏是什麼樣子AFTER:
這裏是添加這些後XML 2意見:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical"
tools:context=".MainActivity" >
<TextView
android:id="@+id/current_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:text="Tuesday, March 3, 2014"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textSize="16sp" />
<View
android:id="@+id/Separator"
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="?android:attr/listDivider" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical" >
<TextView
android:id="@+id/calories_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Calories"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/grey"
android:textSize="30sp" />
<TextView
android:id="@+id/calories_today"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="2500"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textSize="60sp"
android:textStyle="bold" />
<TextView
android:id="@+id/calories_total"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="/2750"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/darkgrey"
android:textSize="30sp" />
<TextView
android:id="@+id/calories_percent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(75%)"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/darkgrey"
android:textSize="30sp" />
</LinearLayout>
<View
android:id="@+id/Separator"
android:layout_width="match_parent"
android:layout_height="5dp"
android:background="?android:attr/listDivider" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_horizontal"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingTop="@dimen/activity_vertical_margin" >
<TextView
android:id="@+id/protein_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Protein"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/grey"
android:textSize="16sp" />
<TextView
android:id="@+id/protein_today"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="60"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textSize="30sp"
android:textStyle="bold" />
<TextView
android:id="@+id/protein_total"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="/80"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/darkgrey"
android:textSize="16sp" />
<TextView
android:id="@+id/protein_percent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(75%)"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/darkgrey"
android:textSize="16sp" />
</LinearLayout>
<View
android:id="@+id/Separator"
android:layout_width="5dp"
android:layout_height="match_parent"
android:background="?android:attr/listDivider" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_horizontal"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingTop="@dimen/activity_vertical_margin" >
<TextView
android:id="@+id/carbs_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Carbs"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/grey"
android:textSize="16sp" />
<TextView
android:id="@+id/carbs_today"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="250"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textSize="30sp"
android:textStyle="bold" />
<TextView
android:id="@+id/carbs_total"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="/300"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/darkgrey"
android:textSize="16sp" />
<TextView
android:id="@+id/carbs_percent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(75%)"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/darkgrey"
android:textSize="16sp" />
</LinearLayout>
<View
android:id="@+id/Separator"
android:layout_width="5dp"
android:layout_height="match_parent"
android:background="?android:attr/listDivider" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center_horizontal"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingTop="@dimen/activity_vertical_margin" >
<TextView
android:id="@+id/fat_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Fat"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/grey"
android:textSize="16sp" />
<TextView
android:id="@+id/fat_today"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="50"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textSize="30sp"
android:textStyle="bold" />
<TextView
android:id="@+id/fat_total"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="/80"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/darkgrey"
android:textSize="16sp" />
<TextView
android:id="@+id/fat_percent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="(75%)"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/darkgrey"
android:textSize="16sp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
爲什麼會發生這種情況,我該如何解決?謝謝。
沒有違法,但該佈局過於複雜,花時間做它的意義。考慮到每個部分(卡路里,蛋白質,碳水化合物和脂肪)具有相同的要求,我會創建一個帶有標籤的單一通用佈局,今天總計和百分比TextViews,然後使用來簡化事情。對不起,沒有回答你的問題,但如果你這樣做,你可能會幫你一個忙。 –
Squonk