et_limit.setOnFocusChangeListener(new OnFocusChangeListener() {
@SuppressLint("NewApi")
@Override
public void onFocusChange(View arg0, boolean focus) {
if(focus){
return;
}
if(et_limit.getText().toString()!=null||!"".equals(et_limit.getText().toString())){
if(Integer.parseInt(et_limit.getText().toString())>180){
Toast.makeText(getApplicationContext(), "請輸入正確值", Toast.LENGTH_SHORT).show();
et_limit.clearComposingText();
et_limit.setText("輸入有誤");
et_limit.setTextColor(Color.RED);
// et_limit.setEnabled(true);
// et_limit.bringToFront();
// et_limit.beginBatchEdit();
return;
}else if(Integer.parseInt(et_limit.getText().toString())==180){
Toast.makeText(getApplicationContext(), "已經是最大值", Toast.LENGTH_SHORT).show();
et_mm.setEnabled(false);
et_ss.setEnabled(false);
}
}
((Route)(getItem(position))).longDegree=et_limit.getText().toString();
}
});
代碼中使用if判斷和這 句代碼後 et_limit.clearComposingText(); EditText再次點擊輸入就崩,什麼原因
可能第二次getText()得到的是null,所以你訪問它就報錯了