美文网首页
5 ViewControl 的生命周期 - 斯坦福 iOS

5 ViewControl 的生命周期 - 斯坦福 iOS

作者: 以太死多 | 来源:发表于2016-05-06 02:43 被阅读100次

    import "ViewController.h"

    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    

    1.创建View

    //如果是从 storyboard 中创建 调用 - (void)awakeFormNib{} 方法
    //否则调用下面方法
    - (instancetype)initWithNibName:(NSString *)name bundle:(NSBundle *)bundle{
    
    if(self = [super initWithNibName:name bundle:bundle]){
        
        
    }
    return self;
    }
    

    2.初始化View

    (只会调用一次(相当于init), 注意不要在其中放入 UI 的代码, 因为调用此方法时 View 的边界还没有确定)

    - (void)viewDidLoad {
    [super viewDidLoad];
    
    //    NSLog(@"%@",[UIFont familyNames]);
    //    NSLog(@"%@",[UIFont fontNamesForFamilyName:@"PingFang TC"]);
    
    
    }
    

    3.将要布局View时调用

    包括从横屏到竖屏,可在其中添加几何相关代码(自动布局)
    - (void)viewWillLayoutSubviews{

    }
    

    4.View自动布局完成后调用

    因为不是所以的都可以自动布局, 有些需要手动, 这时候就使用此方法(手动布局)
    - (void)viewDidLayoutSubviews{

    }
    

    5.view将要显示的时候调用(会多次调用)

    很大一部分功能是同步数据. 注意在不同界面切换时会反复调用, 所以不要在其中放入 init 的内容.
    - (void)viewWillAppear:(BOOL)animated{

    [super viewWillAppear:animated];
    
    }
    

    6.view将要退出显示的时候调用

    适合用于停止一些服务和操作, 减少 CPU 占用
    - (void)viewWillDisappear:(BOOL)animated{

    [super viewWillDisappear:animated];
    }
    

    7.view在屏幕显示之后调用

    - (void)viewDidAppear:(BOOL)animated{
    
    }
    

    8.view在退出屏幕之后调用

    - (void)viewDidDisappear:(BOOL)animated{
    
    }
    

    9.内存不足时会调用

    - (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
    }
    

    @end

    相关文章

      网友评论

          本文标题:5 ViewControl 的生命周期 - 斯坦福 iOS

          本文链接:https://www.haomeiwen.com/subject/jgmlrttx.html