如何在relativelayout中对齐两个textview

时间:2014-02-12 02:24:24

标签: android android-layout android-ui

我正在玩一个包含两个文本视图的列表视图。目前看起来非常糟糕。

enter image description here

我希望文本(八,五等)在左边开始一些边距。更重要的是,我希望右边的数字与左边的文字对齐。这是在中心。

将一行中的项目与中间的一些间隙对齐的最佳方法是什么。现在右边的文字在右上角。

这是我的布局。

<TextView
    android:id="@+id/num_name"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:textSize="16dip"
    android:textColor="#000000"
    android:paddingTop="15dip"
    android:paddingBottom="15dip"
    android:paddingLeft="0dip"
    android:textStyle="bold"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

<TextView android:id="@+id/num_count"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="#ffffff"
    android:textStyle="bold"
    android:background="#9ed321"
    android:paddingRight="13dip"
    android:paddingLeft="13dip"
    android:layout_alignBottom="@+id/cat_id"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true" />

4 个答案:

答案 0 :(得分:0)

LinearLayout是水平的。让TextViews内的两个重量相等0.5。保持左对齐。您可以在整个布局上使用left_margin。

<LinearLayout
     android:orientation="horizontal"
     android:margin_left="10dp"
     >

    <TextView
         android:weight = "0.5"

    />

    <TextView
        android:weight = "0.5"
    />

</LinearLayout>
P.S:我只是在展示这个概念。您可以根据需要完成布局。

答案 1 :(得分:0)

要在左侧添加边距,请在XML文件中使用:

        android:layout_marginLeft="10dp"

您可以使用以下内容使TextView居中:

    android:layout_centerHorizontal="true"

要将名称添加到名称右侧:

android:layout_toRightOf="@id/num_name"

我希望有所帮助。

可以在列表中使用LinearLayour或RelativeLayout。

答案 2 :(得分:0)

试试这个..

它会起作用。我在我的项目中试过这个。

 <RelativeLayout
   <TextView
android:id="@+id/num_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="16dip"
android:textColor="#000000"
android:paddingTop="15dip"
android:paddingBottom="15dip"
android:paddingLeft="0dip"
android:textStyle="bold"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />

<TextView android:id="@+id/num_count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/num_name"
android:textColor="#ffffff"
android:textStyle="bold"
android:background="#9ed321"
android:paddingRight="13dip"
android:paddingLeft="13dip"
android:layout_alignBottom="@+id/cat_id"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true" />

</RelativeLayout>

我已将layout_width从“fill_parent”更改为“wrap_content”

试一试。如果仍然无法正常工作,请告诉我。

答案 3 :(得分:0)

Try This
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="1"
    android:orientation="horizontal" >
      <TextView
    android:id="@+id/num_name"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="0.9"
    android:gravity="left"
    android:textColor="#000000"
    android:textSize="16dip"
    android:text="fgth"
    android:textStyle="bold" />

<TextView
    android:id="@+id/num_count"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="0.1"
    android:background="#9ed321"
   android:gravity="right"
    android:textColor="#ffffff"
    android:textStyle="bold" />
</LinearLayout>