(Xcode IOS) - 我正在尝试制作一个预取所有图像并在滚动之前将它们加载到tableView中的方法(使用SDWebImage)。无论如何:
我有一个messages
数组,每条“消息”都由几个不同的密钥组成,PFFile
,dateCreated
,sender
等......
我需要做的是使用@[ [PFFile], [dateCreated], [other info] ] -> @[ [PFFile] ]
换句话说,我需要从整个数组中创建一个只有PFFiles
的数组。我在考虑这样的事情(伪代码)
self.urls = [self.messages objectsWithKey:@[PFFiles]];
答案 0 :(得分:1)
听起来你在问如何过滤数组。
self.urls = [self.messages objectsAtIndexes:[self.messages indexesOfObjectsPassingTest:^BOOL(id obj, NSUInteger idx, BOOL *stop) {
return [obj isKindOfClass:[PFFile class]];
}]];
我喜欢这种语法,因为你可以使用一个块来返回YES / NO,如果对象通过了你想写的任何类型的测试而且它是一行的。
答案 1 :(得分:0)
使用NSDictionary和NSArray的组合怎么样? 您可以将数组对象放在字典对象中。