【发布时间】:2015-03-16 17:40:00
【问题描述】:
我创建了一个搜索视图,我喜欢在搜索活动启动时专注于搜索视图,在参考了一些 stackoverflow 的问题后,我得到了 setIconifiedBydefault(false);但是它不起作用,当我触摸搜索图标时它起作用。如果我错了,请指导我,这是我的代码。
public boolean onCreateOptionsMenu(Menu menu) {
final SearchView searchView = new SearchView(this);
searchView.setIconifiedByDefault(false);
searchView.setQueryHint(this.getResources().getString(R.string.search_hint));
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
try {
query = URLEncoder.encode(query, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
searchView.clearFocus();
Intent intent = new Intent(getApplicationContext(), SearchActivity.class);
intent.putExtra("query", query);
intent.putExtra("search", "true");
startActivity(intent);
return true;
}
@Override
public boolean onQueryTextChange(String newText) {
return false;
}
});
//TODO make menu an xml item
menu.add("search")
.setIcon(R.drawable.ic_action_search)
.setActionView(searchView)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM|MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
return true;
}
【问题讨论】:
标签: android android-intent android-activity android-view android-search