Предположим, я хочу получить пин-страницу Pinterest, например эту:
Это мой подход:
- сделайте
UICollectionViewController
, страница булавки будетUICollectionViewCell
- ячейка состоит из двух компонентов: контактная информация, дочерний vc и водопад, дочерний vc.
Затем возникает проблема: как я могу повторно использовать дочерний контроллер представления?
Какой-то псевдокод:
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];
Pin *pin = self.dataSource[indexPath.row];
// i have to create a new childVC, based on different indexPath.
UITableViewController *pinInfoViewController = [[pinInfoViewController alloc] initWithPin:pin];
[cell updatePinViewWithPin:pin];
[self addChildViewController:pinInfoViewController];
// Add waterfall view controller
}
Каждый раз при вызове этого метода будет создаваться новый дочерний контроллер представления, это нормально или как его улучшить?