带有搜索 View 的 Android 操作栏

标签 android actionbarsherlock

我想做一个看起来像这样的操作栏:

ActionBar

我无法做到这一点。

我尝试使用描述的那个崩溃的东西 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/

相关文章:

android - ActionBarSherlock targetSdkVersion

android - 如何在 Android Studio 中删除 "Using Log instead of Timber"警告?

android - ActionBarSherlock 作为项目中的 Jar

java - 当客户端套接字连接到本地 IP 而不适用于全局 IP 时,客户端-服务器套接字连接有效。 (超过 4G 连接)

android - 如何在 Android 中旋转 Canvas 上绘制的矩形?

android - 使控件适合自定义 ActionBar View

android - ActionBarSherlock 带有首选项的选项卡

android - SherlockFragmentActivity 中未显示菜单

android - 与服务器的连接不成功。 (文件///android_asset/www/index.html)

Android:在选项卡内传输字符串/值,每个选项卡都有自己的 Activity (Getters-Setter 除外)