UICollectionView的头部无法使用pushViewController跳转,如何解决?

UICollectionView的头部中添加了一个按钮,想通过点击按钮跳转到另一个控制器,但是在UICollectionView的头部中无法使用[self.navigationController pushViewController:p animated:YES]这个方法跳转,有什么好解决方法吗??求教谢谢~!

回复
阅读 2.9k
2 个回答

把下面的代码当做category放到你的项目中。

在view 里面,可以通过,[self.viewController.navigationController pushViewController:p animated:YES]进行跳转。

//获取某个view所在的控制器
- (UIViewController *)viewController {
  UIViewController *viewController = nil;
  UIResponder *next = self.nextResponder;
  while (next) {
    if ([next isKindOfClass:[UIViewController class]]) {
      viewController = (UIViewController *)next;
      break;
    }
    next = next.nextResponder;
  }
  return viewController;
}

我测试了一下是可以跳转的,你的navigation有值吗?或者是别的问题?能不能把问题具体一点,最好可以看代码。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏