进制转换器中有两组radio button,如果要2进制转换10进制,输入了3就会出现问题 其他进制也一样 该怎么解决?
TextWatcher textWatcher = new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
//s--未改变之前的内容
//start--内容被改变的开始位置
//count--原始文字被删除的个数
//after--新添加的内容的个数
//---------start和count结合从s中获取被删除的内容-------
String deleText = s.toString().substring(start, start + count);
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
//s--改变之后的新内容
//start--内容被改变的开始位置
//before--原始文字被删除的个数
//count--新添加的内容的个数
//---------start和count结合从s中获取新添加的内容-------
String addText = s.toString().substring(start, start + count);
}
@Override
public void afterTextChanged(Editable s) {
//s--最终内容
}
};
edit_content.addTextChangedListener(textWatcher);
监听输入内容,不合法的输入剔除就可以了
话说二进制的是有0和1组成的,哪来的3
TextWatcher监听EditText变化,每次输入进行格式检查
android的前端控制不会,不过用swing的话,我会用txtInput2.addActionListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
}
};
);
监听键盘,判断如果输入不合法 直接截取输入的字符串
android应该也是同样的道理