Android SearchView 列表视图过滤器

2024-02-01

我有一个活动,顶部有一个操作栏和一个搜索视图。 另外,我正在使用自定义列表视图,并且希望从搜索视图中输入的关键字中进行过滤,这些关键字应与列表视图项中的特定文本视图相关联。


在监听器的 onQueryTextChange(String Text) 方法中使用: 适配器.getFilter().filter(Text.toString());并在 BaseAdapter 类中实现您的过滤器。 这是示例代码:

 @Override
        public Filter getFilter() 
        {
             return filter;
        }

     private GameFilter filter;

     private class GameFilter extends Filter 
     {
         public GameFilter() { }
            @Override
                  protected FilterResults performFiltering(CharSequence constraint) {
                       FilterResults oReturn = new FilterResults();
                      ArrayList<ItemDetails> results = new ArrayList<ItemDetails>();
                    if (orig == null)
                      orig = itemDetailsrrayList;                    
                      if (constraint != null)
                   {
                        if (orig != null && orig.size() > 0) {
                          for (ItemDetails g : orig) {
                                  if (g.getName().toLowerCase().contains(constraint.toString().toLowerCase()))
                                 results.add(g);
                        }
                   }
                       oReturn.values = results;
                    }
                     return oReturn;
                  }

                 @SuppressWarnings("unchecked")
                 @Override
                protected void publishResults(CharSequence constraint, FilterResults results)
                 {
                     itemDetailsrrayList = (ArrayList<ItemDetails>)results.values;
                   notifyDataSetChanged();
                 }
            }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android SearchView 列表视图过滤器 的相关文章

  • 如何快速自动发送FCM或APNS消息?

    我正在开发一项后端服务 通过 FCM 或 APNS 向移动应用程序发送推送通知 我想创建一个可以在一分钟内运行的自动化测试 并验证服务器是否可以成功发送通知 请注意 我不一定需要检查通知是否已送达 只需检查 FCM 或 APNS 是否已成功
  • 使用workmanager时Firestore脱机持久性错误

    我正在使用一个WorkManger定期从我的中检索信息Firestore当应用程序处于后台和前台时的数据库 此信息用于根据状态更新 UI 因此不同的状态会添加或删除 UI 的不同部分 第一次运行时效果很好 但是 一旦应用程序处于后台并且Wo
  • android中向sqlite中插入大量数据

    目前 我必须一次向我的 Android 中插入超过 100 亿条数据 然而 内存不足的问题会使程序崩溃 sqlite 插入测试非常简单 只需使用 for 循环生成 sql 插入命令并通过 开始 和 提交 进行包装 private Array
  • 谷歌坐标认证

    当我尝试连接到 Google 坐标时 总是出现异常GoogleAuthException 我拥有 Google 地图协调中心许可证 我确实使用我的包应用程序名称和 SHA1 在 google 控制台中创建了我的客户端 ID 我将权限添加到清
  • 是否可以将数组或对象添加到 Android 上的 SharedPreferences

    我有一个ArrayList具有名称和图标指针的对象 我想将其保存在SharedPreferences 我能怎么做 注意 我不想使用数据库 无论 API 级别如何 请检查SharedPreferences 中的字符串数组和对象数组 http
  • Android 模拟器插件无法初始化后端 EGL 显示

    我在 Cloudbees 上设置了 Jenkins 作业 并且可以在那里成功签出并编译我的 Android 项目 现在我想在 android 模拟器中运行一些 JUnit 测试并添加 Android 模拟器插件 我将 显示模拟器窗口 选项设
  • 使用 Android 发送 HTTP Post 请求

    我一直在尝试从 SO 和其他网站上的大量示例中学习 但我无法弄清楚为什么我编写的示例不起作用 我正在构建一个小型概念验证应用程序 它可以识别语音并将其 文本 作为 POST 请求发送到 node js 服务器 我已确认语音识别有效 并且服务
  • 在 HTTPResponse Android 中跟踪重定向

    我需要遵循 HTTPost 给我的重定向 当我发出 HTTP post 并尝试读取响应时 我得到重定向页面 html 我怎样才能解决这个问题 代码 public void parseDoc final HttpParams params n
  • 无法访问 com.google.android.gms.internal.zzbfm 的 zzbfm 类文件未找到

    我正在将我的 Android 应用程序项目从GCM to FCM 为此 我使用 Android Studio 中的 Firebase 助手工具 并遵循 Google 开发人员指南中的说明 一切都很顺利 并将我的应用程序代码更改为FCM根据助
  • 尝试将相机切换回前面但出现异常

    尝试将相机切换回前面 但出现异常 找不到 问题请检查并帮助 error 01 27 11 49 00 376 E AndroidRuntime 30767 java lang RuntimeException Unable to start
  • Android MediaExtractor seek() 对 MP3 音频文件的准确性

    我在使用 Android 时无法在eek 上获得合理的准确度MediaExtractor 对于某些文件 例如this one http www archive org download emma solo librivox emma 01
  • 如何在PreferenceActivity中添加工具栏

    我已经使用首选项创建了应用程序设置 但我注意到 我的 PreferenceActivity 中没有工具栏 如何将工具栏添加到我的 PreferenceActivity 中 My code 我的 pref xml
  • 如何使用 IF 检查 TextView 可见性

    我有一个 onCheckedChangeListener 来根据选择的单选按钮显示文本视图 我有 1 个疑问和 1 个难题 想知道是否有人可以帮助我 问题 您能否将单选组默认检查值设置为 否 单选按钮 以便一开始就不会检查任何内容 问题 如
  • 我想实现下面的布局,按钮应该在屏幕底部,当惰性列被填充时,按钮不应该出去

    顶部有惰性列 惰性列下方有输入电话号码布局并从电话簿布局添加联系人 我希望当未添加联系人时此布局位于顶部 当我添加大量联系人时输入电话号码并添加电话簿布局中的联系人会随着惰性列滚动并移出屏幕 我不让他们走出屏幕 当接触较多时 它们必须粘在底
  • Android Studio - Windows 7 上的 Android SDK 问题

    我对 Google i o 2013 上发布的最新开发工具 Android Studio 有疑问 我已经成功安装了该程序并且能够正常启动 我可以导入现有项目并对其进行编辑 但是 当我尝试单击 SDK 管理器图标或 AVD 管理器图标时 或者
  • Android向menuItem添加子菜单,addSubMenu()在哪里?

    我想根据我的参数以编程方式将 OptionsMenu 内的子菜单添加到 menuItem 中 我检查了android sdk中的 MenuItem 没有addSubMenu 方法 尽管你可以找到 hasSubMenu 和 getSubMen
  • Android:膨胀布局时出现 StackOverFlowError 和 InvokingTargetException

    首先 对不起我的英语 我在膨胀布局时有一个问题 我有一个自定义视图 从 LinearLayout 扩展而来 称为按钮帮助 我在名为的布局上使用该视图加载活动 我的以下代码在所有设备和模拟器上都能完美运行 但具有 QVGA 屏幕 例如 Sam
  • 实现滚动选择 ListView 中的项目

    我想使用 ListView 您可以在其中滚动列表来选择一个项目 它应该像一个 Seekbar 但拇指应该是固定的 并且您必须使用该栏来调整它 我面临的一个问题是 我不知道这种小部件是如何调用的 这使得我很难搜索 所以我制作了下面这张图片 以
  • Crashlytics 出现 Android Studio 构建错误

    我正在尝试将 CrashLytics 与 Android Studio 和 gradle 一起使用 但出现一个令人困惑的错误 java lang NoSuchMethodError 我的 build gradle 是 buildscript
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两

随机推荐

  • 验证两个表的唯一性

    我有一个Company and Archive具有相同表结构的模型 两种型号都有一个validates name uniqueness gt true验证 在 company rb 文件中 我在设置自定义验证时遇到问题 当我将记录添加到Co
  • Ruby 的 Object#taint 和 Object#trust 方法是什么?

    我正在阅读有关 Ruby 字符串方法的内容docs http www ruby doc org core 1 9 3 String html并遇到了这些方法 taint trust untaint untrust 我不知道它们是做什么的 我
  • BottomNavigationView:如何删除连字符标签

    实现 5 项 BottomNavigationView 始终显示标签 我使用以下方法
  • 如何在 extjs 中的网格页脚中添加总行数

    我想在网格页脚中添加总行数 我有商店中可用的总行记录 在网格中 用户选择降序排列 总计行显示为第一行 谁能告诉我如何避免这种情况 我将解释我的完整问题 例如 我有像 Target Target1 Target2 这样的网格视图 是从网络服务
  • Integer.parseInt(string) 实际上是如何工作的?

    最近被问到这个问题 不知道答案 有人可以从高层次解释Java如何获取字符 字符串并将其转换为int 通常这是这样完成的 初始化结果为 0 for each character in string do this 结果 结果 10 从字符中获
  • 如何用笛卡尔绘制波纹圆?

    I m looking for a way to plot a corrugated circle https www mypandakitchen com 1656 large default emporte pieces rond on
  • 扩展界面生成器中的属性检查器

    是否可以使用继承自 UIView 的自定义类的附加属性来扩展界面构建器的属性检查器 现在不行 Interface Builder 允许您通过 Interface Builder 插件为您的对象实现自定义检查器 不过 IB Kit 目前不支持
  • 如何从 ipython 启动twisted的reactor

    我需要从 ipython 中启动一个twisted reactor 以允许继续交互 Ipython 的手册页引用了twisted 但我无法理解应该如何继续 文档引用了 IPython kernel twistedutil 所以我的印象是它应
  • 在 ASP.NET core 中添加迁移时不考虑新的更改

    我和一个朋友正在作为队友参与 ASP NET Core 项目并使用以下工具共享数据github 每次从 who 中提取更改时github 应该删除Migration folder为了添加迁移而不会出现任何错误 否则 我们会收到以下错误 数据
  • 寻找第 N 个孪生素数

    我试图解决 SPOJ 上的问题 我们需要计算第 n 个孪生素数对 相差 2 的素数 n 可以大到 10 5 我尝试使用筛子进行预先计算 我必须筛选最多 10 8 才能获得最大的 n 个孪生素数 但时间限制很严格 2s 并且超时 我注意到人们
  • Visual Studio 2012 中数据库优先实体框架模型的 MVC4 支架

    我在使用 Visual Studio 2012 时遇到问题 尝试添加带有脚手架的 MVC4 控制器 理想情况下 我希望在与我的 Web 应用程序分开的程序集中使用添加新项 ADO NET 实体数据模型 即不是代码优先 从数据库生成实体框架模
  • 如何提示 Google Smart Lock 使用特定输入字段作为网站中的用户名

    我一直在尝试搜索一些有关如何提示 Chrome 的 Google Smart Lock 使用特定输入字段作为与用户名关联的输入字段的文档 但没有任何运气 对于密码 它与使用的一样完美type password 但是 当涉及多字段表单中的用户
  • 相对于 PHP 4“opendir/readdir/closedir”,使用 PHP 5 DirectoryIterator 到底有什么好处?

    使用 PHP 5 DirectoryIterator 到底有什么好处 dir new DirectoryIterator dirname FILE foreach dir as fileinfo handle what has been f
  • 单元格格式四舍五入并显示 2 位小数

    我有一个单元格格式为数字并保留 2 位小数 实际数字是 69 30217 所以在我的单元格中 想象一下单元格 A1 它看起来像 69 30 还行吧 对于该单元格 我正在进行一些串联 因此如果我执行以下操作 E5 该数字显示为 69 3021
  • 如何让 tkinter 消息框出现在顶层前面

    我正在使用 Python 3 和 tkinter 编写一个程序 其中顶层最 初出现在根窗口的中心 如果顶层没有移开 它会覆盖任何可能出现的显示错误消息的消息框 消息框出现在根窗口前面 但在顶层后面 命令行中的简单示例显示会发生什么 gt g
  • 为什么枚举上的开关需要默认值?

    通常 switch 语句中不需要 default 但是 在以下情况下 只有当我取消注释默认语句时 代码才能成功编译 有人能解释一下为什么吗 public enum XYZ A B public static String testSwitc
  • 如何更改列表视图中复选框的文本?

    我知道这是一个愚蠢的问题 但我无法完成它 我想在单击时更改 ChekcBox 的文本 它会根据需要进行更改 但奇怪的是当我滚动列表视图时 该文本被分配给列表视图中存在的其他复选框 似乎每次滚动时列表视图都会重新加载 以下是我到目前为止所尝试
  • Android:了解可绘制文件夹

    我有一张尺寸为 250 70 像素的图像drawable文件夹 我刚刚开始 Android 开发 所以我创建了drawable文件夹中res 并且我有相同的图像 但尺寸更高drawable large文件夹 但图像看起来并不像我预期的那样
  • 在 Visual Studio 2005 中使用 nFringe 调试 UDK

    这是一个非常小众的问题 所以我不期望得到很大的回应 基本上 我正在通过一些教程来学习如何使用 UDK 即这个 http forums epicgames com showthread php p 27043379 post27043379
  • Android SearchView 列表视图过滤器

    我有一个活动 顶部有一个操作栏和一个搜索视图 另外 我正在使用自定义列表视图 并且希望从搜索视图中输入的关键字中进行过滤 这些关键字应与列表视图项中的特定文本视图相关联 在监听器的 onQueryTextChange String Text