Android EditText对齐无法正常工作

时间:2015-02-15 08:06:16

标签: android xml android-edittext gravity

这是我的代码:

<EditText
        android:layout_width="@dimen/edittext_width"
        android:layout_height="@dimen/edittext_height"
        android:gravity="right|center_vertical"/>

我希望文本从右边开始,所以我添加了这段代码:android:gravity="right"

问题是光标始终保持在右侧。 我附加屏幕截图:

重力正确 - enter image description here enter image description here

没有重力 - enter image description here enter image description here

实际上我希望它会像第一张图片和最后一张图片一样。

任何帮助?

3 个答案:

答案 0 :(得分:1)

试试这个。

android:gravity="right"
android:textAlignment="gravity"

答案 1 :(得分:0)

Android自Android 4.2起支持从右到左的语言。请参阅this article on the Android developers blog

  

只需进行一些简单的更改,您的应用就会自动进行镜像       当用户将系统语言切换为从右到左的脚本时       (如阿拉伯语,希伯来语或波斯语)。

     

要利用RTL布局镜像,只需对您的应用进行以下更改:

     

在您的应用清单中声明您的应用支持RTL镜像。   具体来说,将android:supportsRtl =“true”添加到清单文件中的元素。

     

将所有应用的“左/右”布局属性更改为新的“开始/结束”等效项。   如果您将应用程序定位到Android 4.2(应用程序的targetSdkVersion或minSdkVersion为17或更高),那么您应该使用“开始”和“结束”而不是“左”和“右”。例如,android:paddingLeft应该成为android:paddingStart。   如果您希望您的应用程序使用早于Android 4.2的版本(应用程序的targetSdkVersion或minSdkVersion为16或更低),那么您应该添加“开始”并结束“除了”左“和”右“。例如,你同时使用android:paddingLeft和android:paddingStart。

答案 2 :(得分:0)

这可能是由于设备或模拟器键盘Locale引起的,如果它被设置为一种不是从右到左的语言,它可以覆盖(如果我错了,有人会纠正我)。