2010-12-12 47 views
4

我目前在Android中有一个自定义列表视图,通过重写ArrayAdapter的getView方法生成。它完美的作品。但是,在某些情况下,我需要“跳过”列表中的一个项目。我试图返回null,但这只是给出了一个空指针错误。所以我的问题是,我可以在getView中返回什么内容,以便没有新项目被添加到列表中?在Android中跳过getView

回答

4

您可以使用自定义过滤器。

如果你有一个自定义ArrayAdapter可以实现自定义过滤器,它会按一定的标准来筛选列表,然后将这些项目甚至不会显示,也不会调用getView开始。

如果这听起来像它会为你工作,并希望有更多的信息和示例代码让我知道。

+2

你会如何设置它(只是一个概述) – yydl 2010-12-12 03:18:25

+0

你重写适配器中的几个方法,使适配器实现Filterable,并创建一个扩展Filter的类。然后,您调用过滤器,根据您在线程的子类过滤器中设置的任何标准进行过滤,然后在完成时更新列表。过滤器有两种方法,一种对线程进行过滤,另一种发布结果。 – cottonBallPaws 2010-12-12 04:03:16

0

谈谈你项目的可见性属性设置为View.GONE?这应该做到这一点。 如果有更好的方式来做到这一点,我不知道它

+0

听起来有点像一个黑客,但应该工作。 – yydl 2010-12-12 01:55:26

+3

其实没有。它在列表中创建空白的地方。 – yydl 2010-12-12 02:06:32