我有点疑惑,我正在设计一个Activity的UI,并且所述UI中的两个TextView
小部件表现得有些奇怪。
我已将背景设置为android:background="#CCCCCC"
以便更容易地观察行为,当我获得我想要的外观时,最终会将其删除。
当TextView
都为空时,行为就是我对UI的期望:
但是当TextView
填充不同长度的字符串时,宽度会发生变化:
这是附加到我的UI行的代码。
<TableRow android:weightSum="2" >
<TextView
android:id="@+id/tvDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="#CCCCCC"
android:gravity="center_vertical|center_horizontal"
android:padding="4dp"
android:textColor="#000000" />
<View
android:layout_width="8dp"
android:layout_height="fill_parent" />
<TextView
android:id="@+id/tvTime"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="#CCCCCC"
android:gravity="center_vertical|center_horizontal"
android:padding="4dp"
android:textColor="#000000" />
</TableRow>
到目前为止,我尝试将android:layout_width
参数更改为具有不同android:padding
和android:layout_weight
组合的过多值。但是没有什么能给我带来预期的效果(这就是让两个TextView
占据相同的空间)。
我远非Android专家,所以任何指针都会非常感激。
答案 0 :(得分:2)
我建议使用LinearLayout。
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:weightSum="1.0"
android:orientation="horizontal">
<TextView
android:id="@+id/tvDate"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:background="#CCCCCC"
android:gravity="center_vertical|center_horizontal"
android:paddingRight="4dp"
android:textColor="#000000" />
<TextView
android:id="@+id/tvTime"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:background="#CCCCCC"
android:gravity="center_vertical|center_horizontal"
android:paddingLeft="4dp"
android:textColor="#000000" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:weightSum="1.0"
android:orientation="horizontal">
<Button
android:id="@+id/buttonDate"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:gravity="center_vertical|center_horizontal"
android:paddingRight="4dp"
android:text="Pick Date" />
<Button
android:id="@+id/buttonTime"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:gravity="center_vertical|center_horizontal"
android:paddingLeft="4dp"
android:text="Pick Time" />
</LinearLayout>