android – EditText需要点击两次才能打开搜索对话框

参见英文答案 > How to do something after user clicks on my EditText5个
我的应用程序有两个EditText元素.两者都实现OnClickListener,如下所示:
editText1.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // Open search dialog
        doSomeStuff();
        }
    });

doSomeStuff()表示:单击文本字段通过onSearchRequested()打开一个搜索对话框.搜索结果将写回文本字段.

这可以正常工作,但是如果我单击其他文本字段,我总是要在搜索对话框出现之前单击两次.哪里来自哪里,如何更改,以便仅在点击一次时才能出现搜索对话框?

解决方法

对于EditText字段,最好使用OnKeyListener.随着KeyEvent中的传递,您可以根据EditText字段如何点击/获取焦点进行不同的反应.否则,您还可以尝试一个OnFocusChangeListener,或者如果要使用TextWatcher查看添加的每个字符,您可以实现一个TextWatcher并使用addTextChangedListener ..

相关文章

Android 如何解决dialog弹出时无法捕捉Activity的back事件 在...
Android实现自定义带文字和图片的Button 在Android开发中经常...
Android 关于长按back键退出应用程序的实现最近在做一个Andr...
android自带的时间选择器只能精确到分,但是对于某些应用要求...