EditText需要点击两次打开search对话框

我的应用程序有两个EditText元素。 都像这样实现了OnClickListener:

editText1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // Open search dialog doSomeStuff(); } }); 

doSomeStuff()意思是:单击文本字段通过onSearchRequested()打开一个search对话框。 search结果被写回到文本字段。

这工作正常,但如果我点击其他文本字段,我总是必须在search对话框出现之前点击两次。 这是从哪里来的,我怎样才能改变这种情况,以便在只点击一次时出现search对话框?

Solutions Collecting From Web of "EditText需要点击两次打开search对话框"

对于EditText字段,最好使用OnKeyListener。 随着在KeyEvent中传递,你可以做出不同的反应,取决于EditText字段被点击/获得焦点的方式。 否则,您也可以尝试使用OnFocusChangeListener,或者如果要使用TextWatcher查看添加的每个字符,则可以实现TextWatcher并使用addTextChangedListener ..