我正在实现一个用于从用户获取 rtsp URI 的 EditText。虽然这在功能上不是一个大问题,但我想禁用屏幕键盘的默认行为,其中为每个句子的第一个字符启用大写键的状态。从我收集到的信息来看,这无法通过 android:inputType 标志在 XML 中完成。有关如何以编程方式执行此操作的任何指示都会有所帮助。

我想包括代码,但项目的性质阻止我这样做。但我可以说这里没有做任何花哨的事情。 EditText 本身没有使用其他输入标志,唯一的 IME 选项是禁用横向提取 UI 的标志。布局是通过 XML 实现的,而不是以编程方式实现的,因此混合中也没有自定义类或扩展。

编辑:android:capitalize 继承的 TextView 常量不起作用。我专门针对 Galaxy Tab 上的 2.2,所以我不知道这是否与三星的操作系统调整有关,或者是否与 capitalize 常量被弃用有关。

编辑 2: Swype 是不允许使用 capitalize 常量的罪魁祸首。有谁知道是否有一种方法可以让 Swype 玩得很好,而不必通知最终用户禁用 Swype?

最佳答案

您可以使用从 TextView 继承的 android:capitalize 属性。它接受 none(无大写,这是您想要的)、sentences(将每个句子的第一个单词大写)、words(将每个单词的第一个字母大写)和 character(全部大写)。

关于android - 更新 : This is now a Swype related issue: Disable the automatic capitalizing of a sentence's first character in an EditText,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4760771/

10-10 08:35