将TextView右对齐到水平中心

时间:2014-07-17 10:04:10

标签: android text-alignment android-relativelayout

如何将TextView权限与RelativeLayout中的水平中心对齐?enter image description here

好。有人问我要更清楚。

`android:layout_centerHorizontal="true"`

这将设置文本,如下图所示,我不需要。

enter image description here

我使用额外的TextView让它工作了。像这样:

<TextView
    android:id="@+id/textViewHelper"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true" />

 <TextView
    android:id="@+id/textViewMyText"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/textViewHelper"
    android:layout_alignParentTop="true"
    android:text="My Text" /> 

6 个答案:

答案 0 :(得分:0)

试试这个属性android:layout_centerHorizontal="true"

<TextView
        android:layout_centerHorizontal="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Text View "/>

答案 1 :(得分:0)

您可以使用LinearLayout执行此操作。但您必须使用1个额外视图。 我不知道任何其他选择。

代码段

<?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="match_parent"
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="TextView" />

</LinearLayout>

截图

enter image description here

答案 2 :(得分:0)

创建水平方向LinearLayout添加两个视图,其中每个视图权重为50%。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <LinearLayout android:orientation="horizontal"
        android:layout_width="match_parent"                    
        android:weightSum="2" android:layout_height="match_parent">

        <View android:layout_width="0dp" 
            android:layout_weight="1" 
            android:layout_height="match_parent"/>

        <TextView android:layout_width="0dp"
            android:layout_weight="1" 
            android:layout_height="wrap_content"
            android:text="My Text"/>
    </LinearLayout>

</RelativeLayout>

答案 3 :(得分:0)

您可以在LinearLayout的中间使用RelativeLayout像隐形线,并对齐您的商品toRightOf

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

<LinearLayout
    android:id="@+id/linearLayout"
    android:layout_width="1dp"
    android:layout_height="match_parent"
    android:layout_centerHorizontal="true"
</LinearLayout>

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_toRightOf="@+id/linearLayout"

</RelativeLayout>

希望有所帮助

答案 4 :(得分:0)

好的尝试这个

<TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"

        android:layout_alignParentRight="true"
        android:text="Large Text" />

这使得小部件与父级的右侧对齐,其他对齐选项显然是: - android:layout_alignParentLeft="true"android:layout_alignParentTop="true"android:layout_alignParentBottom="true"

答案 5 :(得分:0)

使用RelativeLayout的另一个选项:使用带有centerHorizo​​ntal的视图作为TextView的锚点。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <Space
        android:id="@+id/anchor"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_centerHorizontal="true" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_toRightOf="@+id/anchor"
        android:text="Hello World" />

    <!-- more views -->
</RelativeLayout>

如果您想支持从右到左的布局,请使用android:layout_alignParentEnd="true"android:layout_toEndOf="@+id/anchor"