这就是我想要实现的目标:
main.xml中
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp" >
<TextView
android:id="@+id/tvNameContainer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="3dp"
android:layout_marginLeft="2dip"
android:layout_weight="0.29"
android:textColor="#FFF"
android:gravity="center_horizontal"
android:text="@string/fullname"
android:textStyle="bold" />
<TextView
android:id="@+id/tvDiagnosisContainer"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginBottom="3dp"
android:layout_weight="0.57"
android:gravity="center_horizontal"
android:text="@string/diagnosis"
android:textColor="@color/white"
android:textStyle="bold" />
</LinearLayout>
custom_row.xml
<?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="vertical"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:id="@+id/fullname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:layout_weight="0.29"
android:text="text"
android:textColor="@color/black" />
<TextView
android:id="@+id/lname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="0.29"
android:text="text"
android:textColor="@color/black" />
<TextView
android:id="@+id/diagnosis"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.57"
android:text="@string/diagnosis"
android:padding="5dp"
android:textColor="@color/black" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:id="@+id/lastffupcontainer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lastffup"
android:padding="5dp"
android:textColor="@color/black" />
<TextView
android:id="@+id/lastffup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/lastffup"
android:padding="5dp"
android:textColor="@color/black" />
</LinearLayout>
</LinearLayout>
这是结果:
但我似乎无法在textviews之间建立这些空格。有任何想法吗?
答案 0 :(得分:1)
如果我错了,请纠正我,但看起来您遇到的唯一问题是TextView
中的“诊断”ListView
在右侧更多。为此,我会将LinearLayout
更改为RelativeLayout
。然后,您可以为其指定属性android:layout_alignParentRight="true"
,并在需要时添加一些android:marginRight="some dp"
。
答案 1 :(得分:0)
您可以使用Android新推出的GridLayout(http://developer.android.com/reference/android/widget/GridLayout.html或http://developer.android.com/reference/android/support/v7/widget/GridLayout.html)来获得您正在寻找的内容。
尝试使用GridLayout替换LinearLayout标记,它可能适合您。 (如果需要支持设备&lt; api 14),请确保将支持库添加到项目中。