EditText输入类型textCapSentences不适用于Lollipop

时间:2015-07-29 10:31:44

标签: android android-layout android-edittext android-5.0-lollipop android-xml

我在xml代码中实现了android:inputType="textAutoComplete|textCapSentences"。当我在 kitkat 上运行时, textCapSentence 工作正常但是当在 Lollipop 设备上运行时,它无效。任何人都知道如何解决它。

5 个答案:

答案 0 :(得分:22)

嗨,这是因为在棒棒糖中,如果您在键盘设置中禁用了自动大写,则无法以编程方式启用它。

以下是步骤: -

  • 点按Android Lollipop设备主屏幕上的“设置”图标
  • 在“设置”屏幕上,向下滚动到“个人”部分,然后点按“语言和”。输入'部分。
  • 在'语言&输入'部分,选择键盘(标记为当前键盘)。
  • 现在点按“偏好设置”。
  • 点按以查看“自动资本化”以启用它。
  • 就是这样!

答案 1 :(得分:5)

这样设置,

EditText input = (EditText).findViewById(R.id.ID);
input.setInputType(InputType.TYPE_TEXT_FLAG_CAP_SENTENCES);

答案 2 :(得分:2)

添加这两个属性。它有效。

 android:capitalize="sentences"
 android:inputType="textCapSentences"

答案 3 :(得分:2)

在XML和JAVA文件中设置输入类型,如下所示,

在XML中,

  

机器人:的inputType = “textCapSentences”

并在JAVA文件中,

edittext.setRawInputType(InputType.TYPE_CLASS_TEXT|InputType.TYPE_TEXT_FLAG_CAP_SENTENCES);

这对我有用,并确保键盘的自动大写设置已启用

答案 4 :(得分:0)

您正在尝试使用哪些设备和操作系统特定版本。有时制造商会超越" InputMethod"在操作系统级别,它只是不工作。

您还可以通过从Google代码中获取EditText的来源并将其编译为EditTextCustom进行测试,看看它是否有效。