Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 你能在每个字符的基础上屏蔽EditText值吗?_Android - Fatal编程技术网

Android 你能在每个字符的基础上屏蔽EditText值吗?

Android 你能在每个字符的基础上屏蔽EditText值吗?,android,Android,我有一个EditText,我想屏蔽字符值,但不包括连字符。例如,“11-11”最好显示为“**-**” 我知道如果在EditText配置中定义android:password=“true”,它将屏蔽所有字符(最后输入的值除外)。是否有方法覆盖该功能以明文显示连字符 *编辑-移动答案是毫无疑问的…如果将来有人想知道怎么做,我就知道了。我扩展并重写了getTransformation()。不幸的是,该类的作者没有使其具有丝毫的可扩展性,因此我不得不复制私有类的所有代码 允许连字符的实际更改很简单。我

我有一个EditText,我想屏蔽字符值,但不包括连字符。例如,“11-11”最好显示为“**-**”

我知道如果在EditText配置中定义android:password=“true”,它将屏蔽所有字符(最后输入的值除外)。是否有方法覆盖该功能以明文显示连字符


*编辑-移动答案是毫无疑问的…

如果将来有人想知道怎么做,我就知道了。我扩展并重写了getTransformation()。不幸的是,该类的作者没有使其具有丝毫的可扩展性,因此我不得不复制私有类的所有代码

允许连字符的实际更改很简单。我替换了:

if (!visible) {
    dest[i - start + off] = DOT;
}
与:

希望这能帮助别人。另外,如果有人能找到解决这个问题的更干净的方法,我也很感兴趣


*编辑-事实上,我刚刚注意到掩蔽在横向方向不起作用。。。当我找到答案时,我会更新此内容。

嗨,请将您的解决方案作为答案发布并接受它,这样其他人就不会认为您仍在寻找解决方案。
if (!visible && dest[i - start + off] != '-') {
    dest[i - start + off] = DOT;
}