我试图制作一个软键盘,EditText
呈现的是一个手机键盘的布局,但也有一个"。"和" @"迹象。
我在编辑文本上尝试了这个:
android:inputType="textEmailAddress|phone"
android:digits="0123456789.@"
我一直看到键盘就像我想要的手机布局和#34;。"符号,但没有" @"符号..如何将其添加到键盘?
答案 0 :(得分:3)
我正在尝试制作一个软键盘,EditText提供的键盘具有手机键盘的布局,但也带有“。”和“@”标志。
规范中没有任何内容支持此功能。
android:inputType="textEmailAddress|phone"
引用the documentation for android:inputType
:“通常您可以选择单个值,但有些值可以按指示组合在一起。”文档不建议将textEmailAddress
与phone
结合使用。
android:digits="0123456789.@"
这规定了允许的字符。我不知道InputMethod
甚至发现了这个属性;一个当然不必以某种方式神奇地调整其键盘布局以适应它。
如何将其添加到键盘?
除非您自己写InputMethod
,然后强迫枪支使用它,否则您不会这样做。
请注意,有超过8,000种Android设备型号。这些设备将提供数十种(如果不是数百种)输入方法,其他用户可以单独安装。这些是由独立开发人员编写的。如Graffiti Pro所示,他们中的任何一个都不需要密钥。而且他们当然不必处理应用程序开发人员想要的任意一组密钥。
android:inputType
让您有机会提供输入方法的提示,以了解如何优化用户的布局。 android:inputType
特别限制了几个类的内容,以便为输入方法的开发人员保持理智。此外,android:inputType
是提示,而非需求;正如Graffiti Pro所示,并非所有输入法都必须根据android:inputType
进行更改,至少对于所有可能的类型都是如此。