我想做一个看起来像这样的操作栏:
我无法做到这一点。
我尝试使用描述的那个崩溃的东西 here ,但这并不是我想要的。
- 首先,在用户按下搜索图标之前,SearchView 不可见。但我希望它在 Activity 开始后立即可见。
- 其次,在 SearchView 出现后,所有其他操作图标都消失了。但我希望它们始终可见。
- 它仅适用于 android 3 及更高版本,我希望它适用于 android 2 及更高版本,因此我使用的是 ActionBarSherlock。
例如,谷歌地图中的操作栏看起来与我想要的相似。
有人可以告诉我如何实现这一点吗?
最佳答案
ActionbarSherlock 是一个很棒的库。最新的 (4.2.0) 版本有方法让您在 Activity 开始时搜索 View 可见 SearchView.setIconified(boolean);
因此,如果您想让搜索 View 始终可见,您应该使用以下代码:
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
//Create the search view
SearchView searchView = new SearchView(getSherlockActivity().getSupportActionBar().getThemedContext());
searchView.setQueryHint("Search for countries…");
searchView.setIconified(false);
menu.add("Search")
.setIcon(R.drawable.abs__ic_search)
.setActionView(searchView)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
}
关于带有搜索 View 的 Android 操作栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11395798/