【问题标题】:How to implement Search Bar like gmail app in android? [closed]如何在android中实现类似gmail应用的搜索栏? [关闭]
【发布时间】:2015-05-22 20:14:35
【问题描述】:

我正在尝试在我的 Android 应用中实现 搜索 功能,类似于最新的 gmail 应用(操作栏中的搜索图标)。

点击“搜索”图标后,操作栏会变成一个搜索字段,左侧有一个后退按钮,右侧有一个麦克风按钮。我想在我的应用程序中拥有相同的组件。

有没有这方面的库或教程?

这是否也可以在非棒棒糖版本中支持这种类型的材料设计搜索。 ?

【问题讨论】:

  • 您可以使用 SearchView。在某个布局中添加一个 SearchView,在工具栏中添加一个布局(android.support.v7.widget.Toolbar,在您的项目中也添加 android.support.v7),将工具栏设置为 supportActionBar。
  • @n.m. : 不,我无法在默认搜索视图中获得这种风格,我想在所有版本的 android 中都支持

标签: android android-layout uisearchbar material-design android-search


【解决方案1】:

我不知道棒棒糖版本,但如果你想要这样的搜索,你可以将这个“main_activity_actions”添加到你的操作栏:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:yourapp="http://schemas.android.com/apk/res-auto" >
    <item android:id="@+id/action_search"
          android:title="@string/action_search"
          android:icon="@drawable/ic_action_search"
          yourapp:showAsAction="ifRoom|collapseActionView"
          yourapp:actionViewClass="android.support.v7.widget.SearchView" />
</menu>

并在您的 java 中覆盖它:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.main_activity_actions, menu);
    MenuItem searchItem = menu.findItem(R.id.action_search);
    SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchItem);
    // Configure the search info and add any event listeners
    ...
    return super.onCreateOptionsMenu(menu);
}

更多信息here,是字典的一部分,但想法相同,见!

【讨论】:

    【解决方案2】:

    这个库可以做到这一点,它唯一没有做的就是涟漪,但我希望你可以用其他资源很容易地实现它们:

    https://github.com/Quinny898/PersistentSearch

    这里是其中完成的工作的图像。

    【讨论】:

    • 上述库已被正式弃用......
    【解决方案3】:

    Google 提供了两个开箱即用的 API,称为搜索对话框和搜索视图。您可以使用一个或另一个 - 或两者 - 来实现所需的行为。它已经给了你很多你想要的东西。以下链接有一个教程:http://developer.android.com/guide/topics/search/search-dialog.html

    【讨论】:

    • 你的例子太模糊了。我按照该教程进行操作,但没有生成 gmail searchview 表单
    猜你喜欢
    • 1970-01-01
    • 2018-12-09
    • 1970-01-01
    • 1970-01-01
    • 2013-09-22
    • 1970-01-01
    • 1970-01-01
    • 2014-03-25
    • 2019-08-06
    相关资源
    最近更新 更多