怎么简单怎么来,本来是自定义EditText嵌入到项目里发现效果不理想,自定义EditText在XML中设置无背景无效.........
private void clearEditText(final EditText editText, final ImageView delImageView) { editText.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { } @Override public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { } @Override public void afterTextChanged(Editable arg0) { if (editText.getText().length() != 0) { delImageView.setVisibility(View.VISIBLE); } else { delImageView.setVisibility(View.INVISIBLE); } } }); editText.setOnFocusChangeListener(new View.OnFocusChangeListener() { @Override public void onFocusChange(View arg0, boolean arg1) { if (editText.getText().length() != 0) { delImageView.setVisibility(View.VISIBLE); } else { delImageView.setVisibility(View.INVISIBLE); } if (arg1) { //得到焦点 } else { //失去焦点,删除图标隐藏 delImageView.setVisibility(View.INVISIBLE); } } }); delImageView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { SharedPreferences.Editor editor = mContext.getSharedPreferences("settings", Context.MODE_PRIVATE).edit(); editText.setText(""); if (editText.getId() == R.id.et_settings_user_information_user_name) { editor.putString("UserName", null); gMyApplication.UserName = null; } else if (editText.getId() == R.id.et_settings_user_information_user_password) { editor.putString("Password", null); gMyApplication.Password = null; } editor.apply(); editor.commit(); } }); }