Android 你能在每个字符的基础上屏蔽EditText值吗?
我有一个EditText,我想屏蔽字符值,但不包括连字符。例如,“11-11”最好显示为“**-**” 我知道如果在EditText配置中定义android:password=“true”,它将屏蔽所有字符(最后输入的值除外)。是否有方法覆盖该功能以明文显示连字符Android 你能在每个字符的基础上屏蔽EditText值吗?,android,Android,我有一个EditText,我想屏蔽字符值,但不包括连字符。例如,“11-11”最好显示为“**-**” 我知道如果在EditText配置中定义android:password=“true”,它将屏蔽所有字符(最后输入的值除外)。是否有方法覆盖该功能以明文显示连字符 *编辑-移动答案是毫无疑问的…如果将来有人想知道怎么做,我就知道了。我扩展并重写了getTransformation()。不幸的是,该类的作者没有使其具有丝毫的可扩展性,因此我不得不复制私有类的所有代码 允许连字符的实际更改很简单。我
*编辑-移动答案是毫无疑问的…如果将来有人想知道怎么做,我就知道了。我扩展并重写了getTransformation()。不幸的是,该类的作者没有使其具有丝毫的可扩展性,因此我不得不复制私有类的所有代码 允许连字符的实际更改很简单。我替换了:
if (!visible) {
dest[i - start + off] = DOT;
}
与:
希望这能帮助别人。另外,如果有人能找到解决这个问题的更干净的方法,我也很感兴趣
*编辑-事实上,我刚刚注意到掩蔽在横向方向不起作用。。。当我找到答案时,我会更新此内容。嗨,请将您的解决方案作为答案发布并接受它,这样其他人就不会认为您仍在寻找解决方案。
if (!visible && dest[i - start + off] != '-') {
dest[i - start + off] = DOT;
}