是否可以在微调器项custom_style.xml中指定多个重力值?

时间:2011-03-08 14:52:46

标签: android android-layout gravity

我有textview.xml,这是微调器的项目样式。

<TextView
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  android:gravity="left|center_horizontal"
  android:textSize="18sp">
</TextView>

我知道可以同时指定(Gravity.LEFT | Gravity.CENTER_HORIZONTAL),但在xml中不起作用 - 文本仅移到左侧。

2 个答案:

答案 0 :(得分:164)

87element,

我相信你打算使用layout_gravity你只使用gravity ??

是的,您可以将其中两个layout_gravity属性与“|”结合使用如文档中所述:http://developer.android.com/reference/android/R.attr.html#layout_gravity

但即使使用layout_gravity而非gravity(正如adamp在其评论中所述),您尝试合并的设置也没有意义。你告诉它基本上是沿着同一行对齐左边和中心。在这种情况下,leftcenter_horizontal都指的是水平位置。

您在哪里尝试将TextView与父母对齐?

您的父布局就像一个网格,您可以在其中选择一个位置:

| [1] [2] [3] |

| [4] [5] [6] |

| [7] [8] [9] |

  1. 左上角:android:layout_gravity="top|left"

  2. 顶级中心:android:layout_gravity="top|center_horizontal"

  3. 右上角:android:layout_gravity="top|right"

  4. 中左:android:layout_gravity="center_vertical|left"

  5. 非常中心:android:layout_gravity="center"

  6. 中右:android:layout_gravity="center_vertical|right"

  7. 左下角:android:layout_gravity="bottom|left"

  8. 底部中心:android:layout_gravity="bottom|center_horizontal"

  9. 右下角:android:layout_gravity="bottom|right"

  10. 希望这有帮助!

答案 1 :(得分:11)

以防万一其他人和我一样愚蠢。不要忘记删除空格。 android:gravity="center_horizontal|bottom"android:gravity="center_horizontal | bottom"无效。