【发布时间】:2017-07-28 06:32:16
【问题描述】:
我是 Objective-C 的新手,我有一个接受 NSArray 作为参数的函数,现在我想将该数组存储在我的函数中的本地 var 中,并且然后通过该数组填充集合视图,ps 我还必须更新同一类中的cellForItemAtIndexPath 委托方法。
这是tableView的Cell类中的方法。这里我在单元格中嵌入了一个collectionView。
-(void)initCellWithSetsArray:(NSArray *)setsArray{
NSMutableArray *setArray = [NSMutableArray array];
}
这是我调用这个方法的地方,它接受 cellForRowAt tableView 的委托方法中的数组。
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
[cell initCellWithSetsArray :self.setsHistoryArray];
}
所以当在cellForRowAtIndexPath 中调用时,我需要根据在func 中解析的数组来更新collectionView。我希望你们现在得到照片。
【问题讨论】:
-
您有任何可以显示的代码吗?有许多关于集合视图的教程。您不能将数组存储在局部变量中;您需要将其存储在视图控制器的属性中,因为它需要可供
cellForItemAt -
@Paulw11 实际上这个函数在 TableViewCells 的类中,并且一个集合视图嵌入在单元格的 nib 文件中。所以我在 tableView 的委托方法的 cellforRowAtIndexPath 中调用了这个函数,我还需要用我在单元类的函数中解析的相同数组更新 collectionview
-
@Nirmalsinh 我已经用一些代码编辑了这个问题。如果可以,请提供帮助。
-
根据您使用的是 UICollectionView 还是 UITableView,会调用不同的方法。除非有很好的理由这样做,否则我会避免在单个视图中使用两个 UI 元素。如果有疑问,请使用 UICollectionView(它有更多功能)。下面的方法应该可以工作,但一定要正确初始化你的 UICollectionView,设置委托和数据源。如果您不确定,请发布您的代码。
标签: ios objective-c uicollectionview nsarray