【问题标题】:Modally presented view controller can't unwind模态呈现的视图控制器无法展开
【发布时间】:2014-11-20 09:08:02
【问题描述】:

我有一个嵌入在 UINavigationController 中的 UIViewController sublcas (VC1)。 VC1 触发到另一个 UIViewController 子类 (VC2) 的模态 segue,该子类嵌入在它自己的不同 UINavigationController 中。在 VC2 的导航栏中由 UIBarButtonItem 触发的操作方法内部,我调用了

[self performSegueWithIdentifier:@"SomeString" sender:nil]

对应于 VC1 中的一个 unwind 方法。由于某种原因,不会发生过渡。

切换到 XCode 6 后才出现问题。它在 XCode 5 中运行良好。有什么想法吗?

【问题讨论】:

    标签: xcode6 modalviewcontroller uistoryboardsegue


    【解决方案1】:

    这个问题一直在循环,我也有同样的问题。不幸的是,除了回到旧的delegate 模式之外,还没有好的解决方案。

    如果您将父视图控制器导航控制器子类化并实现- (UIViewController*)viewControllerForUnwindSegueAction:(SEL)action fromViewController:(UIViewController *)fromViewController withSender:(id)sender,您将看到模态实际上是在导航控制器上寻找您的 unwindSegue 方法,而不是呈现模态的视图控制器。

    如果你有一个容器视图控制器,问题会变得更加严重,因为上面的方法会一直调用控制器链到情节提要的初始视图控制器。

    Unwind Segue not working in iOS 8 这里有一个潜在的解决方法,但它也有其缺点和副作用。

    【讨论】:

      猜你喜欢
      • 2011-12-03
      • 1970-01-01
      • 1970-01-01
      • 2016-02-03
      • 1970-01-01
      • 1970-01-01
      • 2017-08-02
      • 1970-01-01
      • 2011-01-15
      相关资源
      最近更新 更多