我想回答一个概念问题。
我的目标是制作一个 android 应用程序,其中文本框只能具有特定类型的输入。例如,十进制数字很简单,您可以使用数字文本框。但是,如果我以十六进制编号系统为例,我如何让我的框拒绝任何尝试输入但不是有效的十六进制字符 (0-F) 的输入?这个概念可以扩展到八进制和二进制编号系统。理想情况下,单击框时出现的键盘只会显示该特定框的有效字符,但我不确定这是否可能。
谢谢!
K。
覆盖文本框侦听器并在击键时,获取输入的文本,运行您想要的条件。如果通过,则可以接受,如果不通过,则警告用户..
监听器示例:
tv = (TextView)findViewById(R.id.charCounts);
textMessage = (EditText)findViewById(R.id.textMessage);
textMessage.addTextChangedListener(new TextWatcher(){
public void afterTextChanged(Editable s) {
}
public void beforeTextChanged(CharSequence s, int start, int count, int after){}
public void onTextChanged(CharSequence s, int start, int before, int count){
//Check if text is hexadecimal
}
});