如何检测searchView上的点击?
我尝试过使用setOnClickListener,setOnSearchClickListener,setOnFocusChangedListener,但无济于事。
问题似乎只是点击文本框。如果我单击文本框onClickListener触发器之外的任何位置,但是如果在文本框内单击则不会。
我想解决的问题是,如果用户点击任何地方,我需要关闭。但我不知道如何处理SearchView。
答案 0 :(得分:2)
我设法找到解决问题的方法。 它有点hackish,但它的工作原理。您必须从searchView获取editText并将OnClickListener设置为
int id = searchView.getContext().getResources().getIdentifier("android:id/search_src_text", null, null);
EditText editText = (EditText) searchView.findViewById(id);
editText.setOnClickListener(listener);
答案 1 :(得分:0)
尝试一下:
searchView = (SearchView)findViewById(R.id.searchView);
searchView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
searchView.setIconified(false);
}
});