zoukankan      html  css  js  c++  java
  • View的懒加载

    AppDelegate.m

    #import "AppDelegate.h"

    #import "ViewController.h"

    @interface AppDelegate ()

     

    @end

     

    @implementation AppDelegate

     

     

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

        // Override point for customization after application launch.

        UIWindow *window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];

        ViewController *vc = [[ViewController alloc] init];

    //    vc.view.backgroundColor = [UIColor purpleColor];//view的懒加载 View 的懒加载只有需要的时候才加载

    //    NSLog(@"aaaaaa");

        window.rootViewController = vc;

        NSLog(@"aaaaaaa");

       

        //显示控制器view

        [window makeKeyAndVisible];

        NSLog(@"bbbbbb");

        self.window = window;

        return YES;

    }


    ViewController.m

    #import "ViewController.h"

     

    @interface ViewController ()

     

    @end

     

    @implementation ViewController

     

    - (void)viewDidLoad {

        [super viewDidLoad];

        // Do any additional setup after loading the view, typically from a nib.

        NSLog(@"%s",__func__);

    }

     

    - (void)didReceiveMemoryWarning {

        [super didReceiveMemoryWarning];

        // Dispose of any resources that can be recreated.

    }

     

    @end

     

    另一种情况

    #import "AppDelegate.h"

    #import "ViewController.h"

    @interface AppDelegate ()

     

    @end

     

    @implementation AppDelegate

     

     

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

        // Override point for customization after application launch.

        UIWindow *window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];

        ViewController *vc = [[ViewController alloc] init];

        vc.view.backgroundColor = [UIColor purpleColor];//view的懒加载 View 的懒加载只有需要的时候才加载

        NSLog(@"aaaaaa");

        window.rootViewController = vc;

    //    NSLog(@"aaaaaaa");

       

        //显示控制器view

        [window makeKeyAndVisible];

        NSLog(@"bbbbbb");

        self.window = window;

        return YES;

    }

     

    1.懒加载基本

    懒加载——也称为延迟加载,即在需要的时候才加载(效率低,占用内存小)。所谓懒加载,写的是其get方法.

    注意:如果是懒加载的话则一定要注意先判断是否已经有了,如果没有那么再去进行实例化

    2.使用懒加载的好处:

    (1)不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强

    (2)每个控件的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合

  • 相关阅读:
    Spring集成MyBatis
    UpdatePanel的简单用法(转)
    updatePanel导致JS失效的解决办法(转)
    sql面试题(学生表_课程表_成绩表_教师表)
    javascript深入理解js闭包
    T-SQL利用Case When Then多条件判断
    T-SQL排名函数
    DataTable字符串类型的数字,按照数字类型排序
    Sql 行转列问题总结
    行转列:SQL SERVER PIVOT与用法解释
  • 原文地址:https://www.cnblogs.com/Lu2015-10-03/p/5147832.html
Copyright © 2011-2022 走看看