android – EditText请求焦点不工作

前端之家收集整理的这篇文章主要介绍了android – EditText请求焦点不工作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个EditText和一个按钮.点击按钮我想打开EditText键盘,同时要求重点放在EditText上,这样用户直接开始键入键盘,文本就出现在EditText中.
但是在我的情况下,当我点击按钮它打开键盘,但它不会设置对EditText的焦点,因为哪个用户必须再次单击EditText来写入它.有什么问题任何帮助或建议.

代码点击按钮

m_SearchEditText.requestFocus();
InputMethodManager inputMethodManager=(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.toggleSoftInputFromWindow(m_SearchEditText.getApplicationWindowToken(),InputMethodManager.SHOW_FORCED,0);

解决方法

确保edittext可在触摸模式下对焦.你可以这样做.

在xml中:

android:focusableInTouchMode="true"

在Java中:

view.setFocusableInTouchMode(true);

我个人并不相信这个参数的XML定义.我总是要求这两行代码重点:

view.setFocusableInTouchMode(true);
view.requestFocus();

键盘铃声自身出现,无需调用InputMethodManager.

它在大多数情况下起作用.一旦它没有为我工作,因为我已经失去了对象的引用由于相当繁重的处理 – 确保这不是你的问题.

原文链接:https://www.f2er.com/android/312209.html

猜你在找的Android相关文章