【问题标题】:Android filter ListView with users optionsAndroid 使用用户选项过滤 ListView
【发布时间】:2016-06-08 01:24:10
【问题描述】:

我正在创建一个应用程序,其中用户可以在 PreferencesActivity 中设置一些首选项,然后我得到一个带有 ListView 的片段,应该根据用户选择的内容进行过滤。我已经有一个Filter,它使用用户文本输入过滤列表,但我不确定如何根据PreferencesActivity 中的偏好进行过滤。

表示单个列表项的数据类如下所示:

public class MyData
{
   private ArrayList<SomeEnumType> enumListMember;
   private String forRegularStringFilter;
   ...
}

public enum SomeEnumType
{
   VAL1,
   VAL2,
   VAL3
}

用户在首选项中看到的是带有条目 VAL1、VAL2、VAL3 的 MultiSelectListPreference,并且用户可以选择其中的几个。在用户完成他的选择后,列表应该只显示其enumListMember 包含用户选择的所有枚举值的项目。例如,类的列表可以包含 VAL1 和 VAL3,因此如果用户选择 VAL3,则应该显示该项目。如果他选择VAL2,应该是过滤掉的。

如何以及在哪里进行这种过滤?在适配器的getView?别的地方?

【问题讨论】:

    标签: android listview android-filter


    【解决方案1】:

    我最终所做的只是创建一个具有正确值的新适配器,并在每次需要过滤时替换旧适配器。

    【讨论】:

      猜你喜欢
      • 2013-03-28
      • 1970-01-01
      • 1970-01-01
      • 2017-12-12
      • 2013-01-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多