我尝试将其设置为当我在EditText字段中输入内容时,它将更改文本颜色并将变量设置为输入数字的值。但是,当我从字段中删除字符时,它会触发关闭应用程序的错误。我想我可能需要找到一个不依赖于长度的if语句,或者可能使用其他一些方法(onTextChanged,beforeTextChanged ......我真的不知道如何正确使用这两种方法)< / p>
public void afterTextChanged(Editable arg0) {
if(arg0.length()>0){
ageTag.setTextColor(Color.GREEN);
ageEntered=true;
ageInYears=Integer.parseInt(enterAge.getText().toString());
}
}
答案 0 :(得分:3)
实施android.text.TextWatcher
界面
绑定一名听众:
enterAge.addTextChangedListener(this);
答案 1 :(得分:-1)
我有类似的问题。我必须在第5个字符,第11个字符等后面附加“-”。当我想删除“-”时,它忽略了删除键,因此我的工作如下。
创建了两个变量:beforeCharCounter和charCounter,并在onTextChanged中将它们的值设置为before和count。
affine_transformation = np.asarray([np.linalg.lstsq(pts_a[i,:,:], pts_b[i,:,:], rcond=None)[0].transpose() for i in range(pts_a.shape[0])])
如果before的值更大,则长度可以确定是否删除,这将解决删除问题。当用户输入10个字符并在第5个字符上按时,将使用该计数。如果我们不保留确切的计数,那么将在结尾处添加破折号,就像疯了一样。
希望这将帮助您解决问题。