此布局用作ListView中项目的布局。我的布局非常简单,一切正常,但是现在我已经更改了一点,并且在尝试加载时正在崩溃。.不确定我在做什么错
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:weightSum="8"
android:layout_width="fill_parent"
android:layout_height="75dp">
<TextView android:id="@+id/priceText"
android:layout_weight="2"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:textStyle="bold"
android:textSize="22dp"
android:textColor="#000000"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"
android:layout_marginLeft="5dp" />
<LinearLayout
android:layout_weight="5"
android:layout_height="fill_parent"
android:weightSum="2"
android:orientation="vertical">
<TextView android:id="@+id/storeText"
android:layout_width="fill_parent"
android:layout_weight="1"
android:gravity="right|bottom"
android:textStyle="bold"
android:textSize="22dp"
android:textColor="#000000"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp" />
<TextView android:id="@+id/distanceText"
android:layout_width="fill_parent"
android:layout_weight="1"
android:gravity="right|top"
android:textSize="16dp"
android:textColor="#545454"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp" />
</LinearLayout>
<TextView
android:layout_height="fill_parent"
android:layout_alignParentBottom="true"
android:layout_alignParentTop="true"
android:layout_marginBottom="5dp"
android:layout_marginTop="5dp"
android:layout_weight="1"
android:gravity="right|center_vertical"
android:text=">"
android:textColor="#000000"
android:textSize="36dp"
android:textStyle="bold"
android:layout_marginRight="5dp" />
</LinearLayout>
使用android:layout_weight put layout_width =" 0dip"
工作代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:weightSum="8"
android:layout_width="fill_parent"
android:layout_height="75dp">
<TextView android:id="@+id/priceText"
android:layout_weight="2"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:textStyle="bold"
android:textSize="22dp"
android:textColor="#000000"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"
android:layout_marginLeft="5dp" />
<LinearLayout
android:layout_weight="5"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:weightSum="2"
android:orientation="vertical">
<TextView
android:id="@+id/storeText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:layout_marginTop="5dp"
android:layout_weight="1"
android:gravity="right|bottom"
android:textColor="#000000"
android:textSize="22dp"
android:textStyle="bold" />
<TextView
android:id="@+id/distanceText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="5dp"
android:layout_marginTop="5dp"
android:layout_weight="1"
android:gravity="right|top"
android:textColor="#545454"
android:textSize="16dp" />
</LinearLayout>
<TextView
android:layout_height="fill_parent"
android:layout_width="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentTop="true"
android:layout_marginBottom="5dp"
android:layout_marginTop="5dp"
android:layout_weight="1"
android:gravity="right|center_vertical"
android:text=">"
android:textColor="#000000"
android:textSize="36dp"
android:textStyle="bold"
android:layout_marginRight="5dp" />
</LinearLayout>
您需要将android:layout_width=".."
和android:layout_height=".."
添加到所有视图:
<TextView android:id="@+id/storeText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right|bottom"
android:textStyle="bold"
android:textSize="22dp"
android:textColor="#000000"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp" />
<TextView android:id="@+id/distanceText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="right|top"
android:textSize="16dp"
android:textColor="#545454"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp" />
</LinearLayout>
<TextView
android:layout_height="fill_parent"
android:layout_width="0dp"
android:layout_alignParentBottom="true"
android:layout_alignParentTop="true"
android:layout_marginBottom="5dp"
android:layout_marginTop="5dp"
android:layout_weight="1"
android:gravity="right|center_vertical"
android:text=">"
android:textColor="#000000"
android:textSize="36dp"
android:textStyle="bold"
android:layout_marginRight="5dp" />
</LinearLayout>
您给android_layout_weight的每个元素都没有给出宽度。如果您给了这个重量,以便元素有一定的空间android:layout_width =" 0"因此,它将重量作为宽度
需要每个元素的高度和宽度
您错过了一些布局宽度和布局高度属性。我添加了所有项目。
请使用以下代码。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:weightSum="8"
android:layout_width="fill_parent"
android:layout_height="75dp">
<TextView android:id="@+id/priceText"
android:layout_weight="2"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"
android:textStyle="bold"
android:textSize="22dp"
android:layout_width="wrap_content"
android:textColor="#000000"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp"
android:layout_marginLeft="5dp" />
<LinearLayout
android:layout_weight="5"
android:layout_height="fill_parent"
android:weightSum="2"
android:layout_width="wrap_content"
android:orientation="vertical">
<TextView android:id="@+id/storeText"
android:layout_width="fill_parent"
android:layout_weight="1"
android:layout_height="wrap_content"
android:gravity="right|bottom"
android:textStyle="bold"
android:textSize="22dp"
android:textColor="#000000"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp" />
<TextView android:id="@+id/distanceText"
android:layout_width="fill_parent"
android:layout_weight="1"
android:layout_height="wrap_content"
android:gravity="right|top"
android:textSize="16dp"
android:textColor="#545454"
android:layout_marginTop="5dp"
android:layout_marginBottom="5dp" />
</LinearLayout>
<TextView
android:layout_height="fill_parent"
android:layout_alignParentBottom="true"
android:layout_alignParentTop="true"
android:layout_marginBottom="5dp"
android:layout_marginTop="5dp"
android:layout_weight="1"
android:gravity="right|center_vertical"
android:text=">"
android:layout_width="fill_parent"
android:textColor="#000000"
android:textSize="36dp"
android:textStyle="bold"
android:layout_marginRight="5dp" />
</LinearLayout>
我不知道您在此布局上要实现什么,但是XML中很少有错误。
-
在各个地方的宽度和高度都缺失。考虑添加这些。
-
您正在添加linearlayout作为父标签,但使用relativelayout标签
android:layout_alignparentbottom =" true" android:layout_alignparenttop =" true"
确实考虑删除这些。
-
使用
android:layout_weight=""
和android:layout_height="" , android:layout_width=""
的正确组合
评论是否需要任何澄清或帮助