setOnFocusChangeListener的使用

Posted zhchoutai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了setOnFocusChangeListener的使用相关的知识,希望对你有一定的参考价值。

类似于文本框里面hint文字在初始化的时候显示或者隐藏的操作,就要用到setOnFocusChangeListener的

 

首先我认为不是太必要~
毕竟当你输入东西时,默认文字自然会消失
当然假设你执意要这样做

你能够在onCreate方法中通过findViewById找到该EditText
然后setOnFocusChangeListener监听器
在onFocusChange方法中推断是否有焦点
有焦点时setHint(null)
没有焦点时setHint(string);(string为editText1.getHint());

这样就能够当你点击文本框时默认文字消失
下面为核心代码

        final EditText editText1 = (EditText) findViewById(R.id.editText1);
        final String string = editText1.getHint().toString();
        editText1.setOnFocusChangeListener(new OnFocusChangeListener(){

            @Override
            public void onFocusChange(View arg0, boolean hasFocus) {
                if(hasFocus){
                    editText1.setHint(null);
                }else{
                    editText1.setHint(string);
                }
            }
           
        });

hasfocus 点击的时候触发!

以上是关于setOnFocusChangeListener的使用的主要内容,如果未能解决你的问题,请参考以下文章

事件

EditTextView相关控制

如何根据焦点显示前景中的视图?

用户输入后禁用edittext searchview

Android中EditText焦点问题

android edittext输入完成后让光标消失