Android:阻止虚拟键盘上的键
问题描述:
我想允许用户只将某些字符输入到galaxy选项卡(Android 2.2)上的EditText,但会阻止其他所有字符。 OnKeyListener似乎不会对软件键盘做出反应。Android:阻止虚拟键盘上的键
PS:我不想阻止整个范围的字符,如所有数字或所有特殊字符等。让我们说只是字符't'。
请帮忙。一个小时后,我找不到解决方案。
答
调用onKeyDown事件,并监听按下的键,如果键是允许的键,则将其添加到您的字符串中,如果没有,则不要将其添加到字符串中。那样,或者在所有无效字符的keydown之后剥离字符串。试试http://www.rgagnon.com/javadetails/java-0030.html就可以得到答案。那是java代码,但我相信所有这一切都转化为android。希望有帮助
不,我需要阻止/删除某些字符。我认为这对于TextWatcher来说是不可能的,因为它会在无限循环或崩溃中递归地调用它自己。我用InputFilters找到了一个解决方案。 – StanE 2011-01-26 16:16:24
它可能是因为我已经完成了。自定义的InputFilter虽然可能更好。 – 2011-01-26 16:18:20