0
我在我的註冊活動中有4 EditText
s。當用戶填寫表格並移至下一個字段時,我將驗證前一個字段。如果它是正確的,我把一個勾號圖標。如果不正確,我把標準錯誤圖標。錯誤圖標和彈出消息在setError
我已經重寫了setError
方法來實現它。這是因爲默認情況下,setError
附帶彈出消息,並且當字段正確填充時,我不希望發送任何消息。我只想要刻度圖標。
我的問題是,當字段填寫不正確時,我確實需要顯示錯誤彈出消息。但由於我已經覆蓋它,它沒有顯示。
public class MyEditText extends EditText {
public MyEditText(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public void setError(CharSequence error, Drawable icon) {
setCompoundDrawables(null, null, icon, null);
}
}
所以,我的問題是:我怎麼能使用的setError
原來的行爲,當我通過圖標不與我打勾的圖標相匹配。
PS:我嘗試使用setCompoundDrawablesWithIntrinsicBounds
進行正確驗證,並且使用setError
進行錯誤驗證。但是,這給了我不一致的錯誤。這就是爲什麼我決定只使用setError
來驗證。
請您清楚解釋一下嗎? –