安卓EditText.requestFocus失效

Posted 我怀里的猫

tags:

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

安卓EditText.requestFocus失效

之前项目需求要求在进入一个activity的时候自动获取页面内某个EditText的焦点,让用户可以进入页面过后马上输入,这里我使用了

editText.requestFocus();

我经过调试过后这行代码并没有生效,于是在网上查找了一些资料发现了原因,
因为我是在onCreate()方法中调用的这行代码,但是在activity的生命周期中这个时候editText这个时候并没有被渲染在界面上,所以这行代码理所当然的失效了。

话不多说,下面上解决办法

        //第一次设置延时,等待页面渲染完毕再设置焦点
        editText.postDelayed(new Runnable() {
            @Override
            public void run() {
                editText.requestFocus();
            }
        }, 500);

以上是关于安卓EditText.requestFocus失效的主要内容,如果未能解决你的问题,请参考以下文章

EditText自动弹出软键盘

EditText不显示光标怎么解决

Android进入页面开始就自动弹出软键盘

Android EidtText 光标的使用和设置

Android开发 EditView的开发记录

android gridview 怎么在适配器中设置不可选择项