Aid*_*Fry 2 android click searchview
任何人都可以看到为什么这不起作用..
我的SearchView位于ActionBar中并始终显示.我想知道用户何时按下搜索视图...而不是当它扩展或获得焦点时.
此代码位于onCreateOptionsMenu中
SearchView = _searchView;
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
_searchView = (SearchView) menu.findItem(R.id.menu_finder_text_search).getActionView();
_searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
_searchView.setIconifiedByDefault(false); // Do not iconify the widget, we want to keep it open!
_searchView.setFocusable(false);
_searchView.setClickable(true);
_searchView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//DO SOMETHING!
}
});
Run Code Online (Sandbox Code Playgroud)
任何人?
SearchView继承自LinearLayout,因此我们可以为每个子项设置setOnClickListener,如下所示:
public static void setSearchViewOnClickListener(View v, OnClickListener listener) {
if (v instanceof ViewGroup) {
ViewGroup group = (ViewGroup)v;
int count = group.getChildCount();
for (int i = 0; i < count; i++) {
View child = group.getChildAt(i);
if (child instanceof LinearLayout || child instanceof RelativeLayout) {
setSearchViewOnClickListener(child, listener);
}
if (child instanceof TextView) {
TextView text = (TextView)child;
text.setFocusable(false);
}
child.setOnClickListener(listener);
}
}
}
Run Code Online (Sandbox Code Playgroud)
来自:http://www.trinea.cn/android/searchview-setonclicklistener-not-working/
| 归档时间: |
|
| 查看次数: |
5415 次 |
| 最近记录: |