【发布时间】:2018-01-16 11:57:03
【问题描述】:
我正在尝试设置“首字母大写”程序(因为我在ListView 中设置了EditText)
与这个问题相关的话题很多,我猜最著名的是that。我已经尝试过那里提供的解决方案,并且
setInputType(InputType.TYPE_CLASS_TEXT|InputType.TYPE_TEXT_FLAG_CAP_SENTENCES)
真的很有帮助。例外 - 当用户使用 GBoard (谷歌键盘) 它没有帮助。 (自动大写没有关闭)
那么,是否有可能让它为GBoard 工作?或者……当edittext 中没有文本时,是否可以以编程方式press shift?
【问题讨论】:
-
没有(知道我能找到)方法来覆盖它。最好的选择(从不同的制造商混乱与 android-all-the-time 的角度来看是最安全的)是您已经在做的事情和文本侦听器的组合,以大写 CharSequence 的第一个字母(或者当字段失去焦点时,如果您的用户案例发生这种情况)。如果可行的话,也可以将 CapWords 视为一个标志(因为无论 Board 开关如何,它都会起作用)。但总而言之,最好的解决方案是两者兼而有之。
标签: java android android-keypad capitalization gboard