如何使用手机输入和隐藏字符串的功能获取Edittext。我知道
android:inputType="textPassword"
隐藏字符串,而
android:inputType="phone"
打开拨号盘界面。
如何将两者合并?
答案 0 :(得分:33)
android:password
已被弃用,但AFAIK是唯一可以忽略android:inputType="phone|textPassword"
的方法...
<EditText
android:id="@+id/EditText01"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:password="true"
android:inputType="phone" />
答案 1 :(得分:5)
我相信这就是你想要的?
android:inputType="numberPassword"
编辑:在问题(2010)时,这可能不在API中,但对于当代开发,它可用。
答案 2 :(得分:2)
我还没有找到解决这个问题的合适方案。 dtmilano接受的解决方案并不完全有效。如果EditText在横向模式下聚焦,您可以使用全屏键盘,则数字仍以明文显示,而不是屏蔽。
我花了很多时间浏览实际的TextView代码,这是一个问题的原因是他们显式检查InputType.TYPE_CLASS_TEXT的InputType,如果我没记错的话,TYPE_MASK_CLASS。因此,如果在这些边界中包含任何其他InputType(我认为TYPE_CLASS_TEXT和TYPE_MASK_CLASS使用的范围是第一个字节),那么它将不会被识别为需要屏蔽的密码。
我知道我说的很混乱。实际的代码更令人困惑。说实话,我对TextView的代码感到非常震惊。这是一个混乱的混乱,到处都是硬编码检查。糟糕的编码实践导致了这样的问题。
答案 3 :(得分:1)
无需使用已弃用的android:password
即可解决此问题。请参阅我的回答here。
答案 4 :(得分:0)