【问题标题】:How to implement multiple filtering on RecyclerView based android app?如何在基于 RecyclerView 的 Android 应用上实现多重过滤?
【发布时间】:2016-12-29 04:13:31
【问题描述】:

目前,我已经开发了一个Activity 来使用RecyclerView 和搜索功能显示数据列表(如image_1 所示)。

我想向工具栏添加过滤选项,类似于 Youtube 应用程序上的过滤器(参见 image_2)。任何人都可以给我线索来轻松实施它吗?无论是 UI 设计还是业务逻辑。

知道如何实现过滤器对话窗口(参见 image_3)吗?我应该只使用AlertDialog 还是有其他更好的选择?

【问题讨论】:

  • 便于过滤使用this通用适配器
  • @pskink 这是一个很棒的课程,但我不确定如何准确地使用它。你介意用一些代码来回答吗?

标签: android android-layout android-recyclerview android-filter


【解决方案1】:

因此,您需要创建一个选项菜单,该菜单以自定义布局启动 DialogFragment,并获取用户在对话框中过滤的标签,然后您可以使用它们来过滤您的 recyclerview。

你的适配器应该实现 Filterable 接口!!

您可以按照以下说明进行操作:

  1. 创建一个启动 DialogFragment 的 OptionsMenu。创建一个
  2. DialogInterface.OnClickListener 到对话框中的搜索按钮
  3. 通过您的标签调用您的adapter.filter。创建一个
  4. Filter(android.widget.Filter) 接收你的标签然后你 可以过滤数据并通知!

您的适配器必须实现 Filterable。

How to filter a RecyclerView with a SearchView

【讨论】:

  • 你能给出一个示例布局吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-11-30
  • 2017-04-06
  • 2018-12-09
  • 1970-01-01
  • 2011-09-06
  • 2012-09-03
  • 2021-11-05
相关资源
最近更新 更多