Android:带重力中心的Edittext无法在设备上运行

Mar*_*tin 17 android cursor gravity android-edittext

在Android中,我使用单行edittext,重力设置为居中.在模拟器中,这个功能很好,提示和闪烁的光标都显示出来.在设备上测试(Xperia X10)时,提示文本和闪烁光标都不会显示.闪烁的光标仅显示我是否在edittext中输入了一些文本.

这是我的编辑文本,任何人都可以看到是否缺少某些东西?

<LinearLayout 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:layout_gravity="center"
>
<EditText 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:inputType="numberDecimal" 
    android:ellipsize="end" 
    android:maxLines="1"
    android:gravity="center" 
    android:layout_gravity="center"
    android:hint="Some hint text"
></EditText>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我想要的是:

这就是我要的

我用上面的代码得到了什么(没有游标的空edittext):

edittext不显示提示文本,也没有闪烁的光标

Mar*_*tin 44

我终于找到了让它运行的解决方案.这个EditText适合我:(在索尼爱立信X10和HTC Wildfire上测试过)

<EditText 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:inputType="numberDecimal" 
    android:digits="0123456789.,"
    android:ellipsize="start" 
    android:maxLines="1"
    android:gravity="center"
    android:hint="Some hint text"
></EditText>
Run Code Online (Sandbox Code Playgroud)

  • 谢谢,ellipsize做到了,无论黑魔法是什么. (2认同)

Zha*_*ang 5

希望不会太晚。我遇到了这个问题,我不知道每个设备是否都一样,但是EditText 默认情况下它看起来有底部填充

尽管将重力设置为,但我的EditText文本值始终始终似乎略高于中心,CENTER因此我另外设置了:

myEditText.setPadding(0, 0, 0, 0);
Run Code Online (Sandbox Code Playgroud)

这已经为我解决了,现在我的EditText居中完美:D