我在Android Studio IDE上得到了这个错误。上面写着
不兼容的类型;必需的android.widget.EditText和找到的java.lang.String
@Override
public void afterTextChanged(Editable s) {
if (editabletext.length() == 8) {
editabletext = editabletext.getText().toString().replaceAll("([0-9]{4})([0-9]{4})", "$1-$2")
}
}
发布于 2015-03-15 03:01:44
editabletext
是一个EditText,replaceAll
返回一个字符串。编译器所说的是您不能将String
赋值给EditText
。你可以这样修改你的代码:
if(editabletext.length() == 8){
String tmp = editabletext.getText().toString().replaceAll("([0-9]{4})([0-9]{4})", "$1-$2");
editabletext.setText(tmp);
}
发布于 2015-03-15 03:04:05
替换
editabletext= editabletext.getText().toString().replaceAll("([0-9]{4})([0-9]{4})", "$1-$2")
使用
editabletext.setText(editabletext.getText().toString().replaceAll("([0-9]{4})([0-9]{4})", "$1-$2"))
因为editabletext
的类型为Editable
,并且replaceAll
返回一个String
发布于 2019-07-29 16:59:40
找到"editabletext“的定义,将类型从EditText改为String
https://stackoverflow.com/questions/29052935
复制相似问题