Android:垂直左对齐视图

时间:2013-04-23 18:19:06

标签: android layout views alignment

我正在尝试垂直左侧对齐一些文本视图,但它无法正常工作,是否有其他人可以指出我下面的代码有什么问题?

 <RelativeLayout
    android:id="@+id/footer"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity = "left"
    android:paddingTop="@dimen/top_spacing"
    android:paddingBottom="@dimen/bottom_spacing"
    android:orientation="vertical"
>
    <TextView
        android:id="@+id/Text1"
        style="@style/style1"
        android:ellipsize="marquee"
        android:marqueeRepeatLimit="marquee_forever"
        android:layout_alignParentLeft="true"
        />

    <TextView
        android:id="@+id/Text2"
        style="@style/style1"
        android:ellipsize="marquee"
        android:marqueeRepeatLimit="marquee_forever"
        android:layout_alignParentLeft="true"
        />

      <TextView
        android:id="@+id/Text3"
        style="@style/style1"
        android:ellipsize="marquee"
        android:marqueeRepeatLimit="marquee_forever"
        android:layout_alignParentLeft="true"
        />
</RelativeLayout>

3 个答案:

答案 0 :(得分:1)

尝试以下方法:

 <RelativeLayout
android:id="@+id/footer"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity = "left"
android:paddingTop="@dimen/top_spacing"
android:paddingBottom="@dimen/bottom_spacing"
android:orientation="vertical"
>
<TextView
    android:id="@+id/Text1"
    style="@style/style1"
    android:ellipsize="marquee"
    android:marqueeRepeatLimit="marquee_forever"
    android:layout_alignParentLeft="true"
    />

<TextView
    android:id="@+id/Text2"
    style="@style/style1"
    android:ellipsize="marquee"
    android:marqueeRepeatLimit="marquee_forever"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/Text1"
    />

  <TextView
    android:id="@+id/Text3"
    style="@style/style1"
    android:ellipsize="marquee"
    android:marqueeRepeatLimit="marquee_forever"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/Text2"
    />

您永远不会设置layout_below属性。如果您选择使用RelativeLayout或者需要,这个答案很有用,否则您可能会更好地使用Neoh和Fahad Ishaque的答案,这些答案几乎可以说同样的事情。

答案 1 :(得分:1)

最好将LinearLayout用作您的用例:

<LinearLayout
android:id="@+id/footer"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity = "left"
android:gravity="left"
android:paddingTop="@dimen/top_spacing"
android:paddingBottom="@dimen/bottom_spacing"
android:orientation="vertical">
<TextView
    android:id="@+id/Text1"
    style="@style/style1"
    android:ellipsize="marquee"
    android:marqueeRepeatLimit="marquee_forever"
    />

<TextView
    android:id="@+id/Text2"
    style="@style/style1"
    android:ellipsize="marquee"
    android:marqueeRepeatLimit="marquee_forever"
    />

  <TextView
    android:id="@+id/Text3"
    style="@style/style1"
    android:ellipsize="marquee"
    android:marqueeRepeatLimit="marquee_forever"
    />
</LinearLayout>

答案 2 :(得分:1)

相对布局替换为线性布局。您使用线性布局的所有属性,例如方向。请从文本视图中删除属于相对布局方案的nu必要标签。