回答
etUsername.addTextChangedListener(mTextWatcher);
etUsername.setOnTouchListener(new MyOnTouchListener(etUsername));
TextWatcher:顯示或由用戶輸入隱藏清除按鈕
private TextWatcher mTextWatcher = new TextWatcher() {
boolean isnull = true;
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
@Override
public void afterTextChanged(Editable s) {
if(TextUtils.isEmpty(s)){
if(!isnull){
etUsername.setCompoundDrawablesWithIntrinsicBounds(null, null, null, null);
isnull = true;
}
}else{
if(isnull){
etUsername.setCompoundDrawablesWithIntrinsicBounds(null, null, mClearIcon, null);
isnull = false;
}
}
}
MyOnTouchListener:Clear按鈕點擊收聽
class MyOnTouchListener implements OnTouchListener{
EditText mEditText;
public MyOnTouchListener(EditText editText){
this.mEditText = editText;
}
@Override
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()){
case MotionEvent.ACTION_UP:
int curX = (int)event.getX();
if(curX > v.getWidth() - 60
&& !TextUtils.isEmpty(mEditText.getText())){
// the clear button was clicked,do something you need
// for example, show the hint msg,etc
return true;
}
break;
}
return false;
}
您可以使用代碼上面做一個自定義視圖
如何獲取mClearIcon資源。請幫幫我。 – androidcodehunter 2013-05-09 09:50:23
查看'setCompoundDrawablesWithIntrinsicBounds'方法,'mClearIcon'是'Drawable' – tesla1984 2013-05-09 10:14:40
工作很好,謝謝你的幫助。 – androidcodehunter 2013-05-09 11:12:54
- 1. 在Android中驗證edittext
- 2. 如何在ListView中的Android EditText中進行驗證?
- 3. 驗證領域EDITTEXT Android中
- 4. 如何在ListView中的EditText中進行驗證?
- 5. Android RxJava2多個EditText驗證
- 6. android EditText隻字母驗證
- 7. Android驗證EditText小數點「。」
- 8. 如何在EditText中執行驗證
- 9. 在EditText中驗證名稱
- 10. android中的Edittext空值驗證
- 11. Android中的EditText的範圍驗證
- 12. 在WebForms中進行驗證
- 13. 在Edittext中進行實時搜索Android
- 14. 的EditText驗證
- 15. 驗證EditText
- 16. 使用RxJava2在ViewModel上進行EditText驗證
- 17. EditText上的電子郵件驗證 - Android
- 18. EditText與驗證TextWatcher重複Android
- 19. Android:驗證Edittext必須寫信
- 20. Android,驗證空的EditText字段
- 21. Android edittext驗證如對話框
- 22. android gps距離。 EditText字母表驗證
- 23. Android EditText驗證和正則表達式
- 24. 驗證EditText輸入
- 25. 如何驗證EditText
- 26. 兩個EDITTEXT驗證
- 27. 如何驗證EditText?
- 28. 如何在表單字段中進行驗證,在android中
- 29. 通行證的EditText值在Android的
- 30. 使用setError進行EditText驗證,消失的彈出框和圖標。 (Android)
你想清除所有並驗證嗎? – 2013-05-09 09:20:02
爲清除所有你需要創建自定義controll – 2013-05-09 09:21:26
不,我不想清除所有,但我想玩單場。 – androidcodehunter 2013-05-09 09:21:55