键盘在横屏模式下不显示小数点分隔符

9

当尝试使用逗号 (,) 作为小数分隔符并使用 inputType="numberDecimal" (或 "number") 时,在智能手机的横屏模式下会出现问题,逗号不会显示。

我的布局:

enter image description here

当我打开键盘时:

enter image description here

我的EditText布局。

<EditText
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:digits="0123456789,"
 android:inputType="numberDecimal"
 android:text="5,2" />

我的默认Localept_BR,其中逗号是小数分隔符。

在“平板电脑”中是可以的,因为键盘不是全屏幕的。

enter image description here

如果我去掉android:inputType="numberDecimal",也可以,但不会显示数字键盘。
有什么建议吗? 编辑 #1 我发现的一个部分解决方案是添加android:imeOptions="flagNoFullscreen"编辑 #2 逗号被全球一半采用。为什么在Android上这么难呢?:(

可能是 https://dev59.com/rW865IYBdhLWcg3wa980 的重复问题。 - Noumenon
1
这绝对不是答案。 - Douglas Nassif Roma Junior
inputType设置完全没有本地化,因此无论您的语言环境如何,都是相同的字符集。您尝试过使用其他键盘应用程序吗?全屏输入模式由键盘拥有。 - Dan Hulme
是的,我尝试过使用SwiftKeyGoogle,这两个在PlayStore上最常用的输入法。我的设备是Moto X 2,运行的是Android 6.0系统。 - Douglas Nassif Roma Junior
我不知道全屏模式是由键盘设计的,我用过的两个在上半部分非常相似。 - Douglas Nassif Roma Junior
显示剩余2条评论
1个回答

0

android:inputType="numberDecimal" 是用于输入小数的,它意味着所有从0到9的数字,包括小数点(.),都可以作为输入值。逗号不是正确的小数分隔符。我认为你的供应商可能存在错误,没有提供所有正确的本地化值。你可以尝试使用

<EditText
    android:inputType="number"
    android:digits="0123456789.,"/>

谢谢你的回答,但我已经尝试过了。问题与“number”相同:( ...奇怪的是,只有在全屏打开键盘时才会出现这个问题。 - Douglas Nassif Roma Junior
指定数字并没有任何区别。我已经将编辑控件本地化为使用逗号或小数点,但它们都没有呈现出来。 - Paul Kiar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接