代码之家  ›  专栏  ›  技术社区  ›  Bluephlame

UINavigationController拦截popViewController已激活:

  •  4
  • Bluephlame  · 技术社区  · 17 年前

    问题是,我似乎找不到合适的委托来做这件事。只有这些委托在导航控制器委托上可用,我想要“didfinishshowing”类型的方法。

    – navigationController:willShowViewController:animated:  optional method  
    – navigationController:didShowViewController:animated:  optional method  
    

    例外 “N内部不一致异常”,

    这一定是一个常见的问题,我错过了一些简单的东西。

    2 回复  |  直到 17 年前
        1
  •  10
  •   Ramin    17 年前

    • 正如dmercredi建议的那样 viewWillAppear 在视图控制器A上,当您返回时,它会自动刷新。问题是 视图将出现 当A第一次被调用时,也会被调用。所以你必须设置某种标志来区分第一个 视图将出现

    • viewWillDisappear 视图将消失 会再次接到电话,所以你必须区分来与去。

    • 将各种视图解耦并使用委托模式。视图控制器A将自己设置为B的委托,当B更新某些内容时,它会调用委托方法,因此A会收到更改通知,并可以更新所需的任何内容。您可以在用户在B内部进行更改或覆盖时随时调用委托方法 视图将消失

        2
  •  5
  •   dmercredi    17 年前