这个问题是StackOverFlow上面一个热门的问题Stop EditText from gaining focus at Activity startup。现在我将这个问题翻译并且将各路答案进行整理,保证可以解决这个问题
作者遇到的问题如下:
我有一个Activity,里面有一个EditText和一个ListView,每当我启动Activity的时候,EditText都会自动获取焦点(光标在那里一闪一闪的)。而我不希望他自己获得焦点,我尝试了如下语句
EditText.setSelected(false);
但是根本不起作用,我应该如何阻止EditText自己获取焦点呢?
答案总结:
答案1:确保你的xml布局文件中没有 requestFocus 标签,这个标签会被eclipse自动添加,如果有的话,将其删掉。
答案2:在EditText所在的父布局中添加两行
<LinearLayout
android:focusable="true"
android:focusableInTouchMode="true"/>
这样父布局会默认获取焦点,焦点就从EditText抢走了。
答案3:没有答案3了,上面两个答案基本可以解决问题了。
时间: 2024-10-24 00:48:44