基本上,我有一个收藏视图,A = absent
N = no
Y = yes
在collectionView的cell.contentView
中添加了ViewController的视图,如下所示:
willDisplayCell
现在,这个ViewController有一个tableView。在tableview的-(void)collectionView:(UICollectionView *)collectionView willDisplayCell:(UICollectionViewCell *)cell forItemAtIndexPath:(NSIndexPath *)indexPath {
UIViewController *vc = [self.viewControllerArray objectAtIndex:indexPath.row];
[self displayContentController:vc inView:cell];
}
- (void)displayContentController:(UIViewController *)viewController inView: (UICollectionViewCell *)cell {
[self addChildViewController:viewController];
viewController.view.frame = cell.bounds;
[cell.contentView addSubview:viewController.view];
[viewController didMoveToParentViewController:self];
}
中,我推送了一个新的ViewController。
令人惊讶的是,调用了推送的ViewController的didSelectRowAtIndexpath
和viewDidLoad
,但未调用viewDidLayoutSubviews
。
我还在控制台viewWillAppear
我不确定我在做什么错。
甚至尝试使用Unbalanced calls to begin/end appearance transitions for <viewController Having collection View>
而不是运气。
答案 0 :(得分:0)
需要将ViewController添加到UINavigationController
堆栈中!