在我当前的应用程序中,我想UICollectionView
多次使用某些,但选择行为不同。将以下情节提要布局视为“是”(并且正在工作):
标签栏控制器(2 项): -> 导航控制器 1 -> 集合视图控制器 -> 一些表视图控制器 -> 导航控制器 2 ->(基本)视图控制器
有Basic View Controller
两个与. _ 我想要的是从 过渡到,但是从集合中选择一个项目应该弹出视图并返回到.UIButtons
Push
Collection View Controller
Basic View Controller
Collection View Controller
Basic View Controller
我已经在其中设置了一个自定义属性,该属性在Collection View Controller
相应的prepareForSegue
消息中设置Basic View Controller
(或者根本不设置,如果用户选择 a Tab Bar Item
),因此检测哪个控制器或哪个 UI 组件触发了推送没有问题(有 3 种方式:选择标签栏项目或点击基本视图上的按钮之一)。
问题是弹出Collection View
.
到目前为止我的代码:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { if (self.mode == nil) { // 没做什么 } else if ( [self.mode isEqualToString:@"foobar"] ) { // 我试过的一种方法 [自我dismissViewControllerAnimated:是完成:无]; } else if ( [self.mode isEqualToString:@"blah"] ) { // 其他方法 BasicViewController *targetVC = self.navigationController.viewControllers[ 0 ]; [self.navigationController popToViewController:targetVC 动画:YES]; } }
不幸的是,我的应用程序崩溃了dismiss
。popToViewController
. 甚至可以以不同的导航方式使用相同的视图控制器吗?
我希望有足够的信息来帮助我解决这个问题。您可能知道,项目在增长,我不知道是否还有更多代码需要考虑 :)
提前致谢!