edittext 焦点自动获取问题解决

1,150 阅读1分钟
原文链接: blog.csdn.net

应用搜索框(内含Edittext)点击打开下拉框,点击Edittext要第一次先获取焦点第二次才能打开下拉框

1、一开始用的OnFocusChangeListener,但是页面里的列表刷新一次后,监听就失效了,所以采用点击事件来实现需求,结果又遇上了焦点获取问题,如题描述。
2、解决方案:

Edittext = fView(R.id.act_mail_search);// 搜索框的输入框!!!!
Edittext.setOnClickListener(this);
Edittext.requestFocus();

在点击事件中: (当然这些也就不重要了 ,重要的是用对函数requestFocus();)

case R.id.act_mail_search:
 if (search_more.getVisibility() == View.GONE) {
// ((EditText) v).setSelection(0);
                visibalSearch();
            } else if (search_more.getVisibility() == View.VISIBLE) {
                inVisibalSearch();
            }
            break;