gpt4 book ai didi

android - 如何覆盖 android 的 ArrayAdapter 中的过滤器?

转载 作者:可可西里 更新时间:2023-11-01 18:46:59 26 4
gpt4 key购买 nike

我有一个 ArrayAdapter 环绕自定义对象的 ArrayList。我想为该适配器编写一个自定义过滤器,这样当我调用 getListAdapter().getFilter().filter("abc") 时,列表将通过“abc”的任意转换进行过滤".

我想我会尝试覆盖 ArrayAdapter.getFilter(),但这需要我重新实现私有(private) ArrayAdapter.ArrayFilter,它需要访问一堆ArrayAdapter 的私有(private)实例。

最简单的方法是什么?

最佳答案

首先,看一下 source code of ArrayAdapter .

您会注意到它有私有(private)字段mFilter,它只在getFilter() 方法中使用。因此,只需扩展 ArrayAdapter 并覆盖 getFilter() 即可返回您的 Filter

最好以与 ArrayFilter 相同的方式实现您的 Filter:作为私有(private)内部类,因此它可以访问 ArrayAdapter 的私有(private)字段.

如果这些信息足以完成任务,请告诉我。

关于android - 如何覆盖 android 的 ArrayAdapter 中的过滤器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2671552/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com