zoukankan      html  css  js  c++  java
  • iPhone开发 让viewDidAppear/viewWillAppear 在页面加载前始终调用

    viewDidAppear/viewWillAppear in UINavigationController not be called

    When you push or pop a view controller on/off a navigaction controller's stack, the usual viewWillAppear / viewDidappear methods aren't called. If you want to ensure they're always called, just add the UINavigationControllerDelegate protocol to your root view controller:

    @interface RootViewController : UIViewController <UINavigationControllerDelegate> {
    UINavigationController *navController;
    }

    Then implement these two methods:

    - (void)navigationController:(UINavigationController *)navigationController 
    willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
    {
    [viewController viewWillAppear:animated];
    }

    - (void)navigationController:(UINavigationController *)navigationController
    didShowViewController:(UIViewController *)viewController animated:(BOOL)animated
    {
    [viewController viewDidAppear:animated];
    }

    Be sure to set the root view controller as the delegate for the nav controller. Now viewWillAppear / viewDidAappear will be called whenever a controller is pushed/popped from the stack.

    If you want to call the viewWillDisappear/viewDidDisappear methods, your view controller still has to do that manually before popping itself off the nav stack.

  • 相关阅读:
    python网络编程--线程GIL(全局解释器锁)
    python网络编程--进程线程
    html之块级标签h系列,div
    html之head,base,meta,title
    可视化SNV安装
    MySQLdb模块的安装
    python之os模块
    python之时间函数
    python之路之正则表达式
    python之路 之open
  • 原文地址:https://www.cnblogs.com/cplusplus/p/2245920.html
Copyright © 2011-2022 走看看