2013-02-22 61 views
2

我有一个数据类型称为Filter它有一个NSMutableArray属性,它拥有一堆FilterKey对象(每个过滤器的键数量不同)。我有一堆Filter存储在NSMutableArray中的对象,名为Filters有效访问数组中的数组

我对其中的每一行被填充有数据从FilterKey对象中的一个UITableView。我的问题是,在UITableView中的给定行,我怎么可以使用Filters阵列找到正确的FilterKey(考虑到我已经手动将过滤器和按键按顺序)?

基本上,我知道我可以通过Filters阵列和每个Filter对象只是遍历,遍历所有这FilterKeys,但我不知道是否有更好的方法来做到这一点(即更好的数据结构,或东西会给我正确的对象更快?

很抱歉,如果这是混乱,如果您有任何疑问,请让我知道了意见。

+1

我没有你的答案,我只想说你的用户名是完美的!做得好! – 2013-02-22 16:43:49

+0

@AlbertRenshaw - 哈哈谢谢 – 2013-02-23 05:30:26

回答

2

通常,您将使用部分和行对于这一点,其中每个部分是一个过滤器和每行是一个FilterKey。

这听起来像你只是想显示过滤器钥匙,没有节标题为他们的过滤器(如果我正确地读你的文章)。如果你实际上不需要标题,那很好,只需返回0为tableView:heightForHeaderInSection:niltableView:viewForHeaderInSection:

所有这一切都是真的方便性大于业绩。它不太可能比运行过滤器和计算它们的密钥数量快得多。这种操作非常快速。但是段/行可以更好地映射数据,因此无论如何我都可以使用它来使代码更简单。

1

您可以使用NSMutableDictionary这是哈希映射从而更快,更简单,可读操作。

如果您更喜欢使用阵列,则不需要遍历来搜索特定值,您可以使用NSPredicate来过滤阵列。