我正在尝试对齐3个文本视图,但textview内容没有相互对齐,因为我计划再添加3个,我想要文本值排列。 如果我将第一个对齐到父对齐,第二个在中间,最后一个对齐到右边,则值排成一行,但我还需要3个文本视图的空间。
以下是它的外观:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Value"
android:padding="8dp"
android:gravity="left"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
/>
<TextView
android:id="@+id/amount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Amount"
android:padding="8dp"
android:layout_centerHorizontal="true"
android:gravity="left"
android:layout_toRightOf="@id/value"
/>
<TextView
android:id="@+id/bid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Bids"
android:padding="8dp"
android:gravity="left"
android:layout_toRightOf="@id/amount"
android:layout_alignParentTop="true"
/>
</RelativeLayout>
答案 0 :(得分:3)
如果您为每个textview提供相同的宽度,则可以确保它们彼此对齐。您可以通过在LinearLayout中为每个textview提供1的权重来实现此目的。
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:orientation="horizontal"
android:layout_height="wrap_content">
<TextView
android:id="@+id/value"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Value"
android:padding="8dp"
android:gravity="left" />
<TextView
android:id="@+id/amount"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Amount"
android:padding="8dp"
android:gravity="left" />
<TextView
android:id="@+id/bid"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Bids"
android:padding="8dp"
android:gravity="left" />
</LinearLayout>