EditText去掉光标下划线以及点击隐藏hint

EditText使用很广泛,今天使用中需要去掉光标以及下划线,还需要点击后隐藏hint

去掉下划线 android:background="@null"
去掉光标 android:cursorVisible="false"

点击后隐藏hint 需要写一个焦点变化事件监听

public  View.OnFocusChangeListener onFocusAutoClearHintListener = new View.OnFocusChangeListener() {
        @Override
        public void onFocusChange(View v, boolean hasFocus) {
            EditText editText=(EditText)v;
            if (!hasFocus) {// 失去焦点
                editText.setHint(editText.getTag().toString());
            } else {
                String hint=editText.getHint().toString();
                editText.setTag(hint);
                editText.setHint("");
            }
        }
    };

然后再edittext绑定就行了

 meditSettingNickName.setOnFocusChangeListener(onFocusAutoClearHintListener);

但是在一进入界面edit就会有焦点所以需要把焦点聚集在别的控件上,需要在布局中给EditText的容器控件添加以下两个属性,把焦点聚集在容器控件上。

android:focusable="true"
android:focusableInTouchMode="true"
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章