zoukankan      html  css  js  c++  java
  • UIScreen(屏幕)、UIWindow(画框)、UIView(画布)、didFinishLaunchingWithOptions的概念

     

    //didFinishLaunchingWithOptions 方法:顾名思义。在app开始运行时会调用里面的方法。
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
    {
        //返回的是带有状态栏的矩形
        self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
       
        CGRect bound = [[UIScreen mainScreen]bounds];  //返回的是带有状态栏的Rect
        NSLog(@"boundwith:%f    boundheight:%f",bound.size.width,bound.size.height); 
        NSLog(@"boundx:%f    boundy:%f",bound.origin.x,bound.origin.y); 
        //2012-08-03 23:21:45.716 DinkMixer[599:c07] boundwith:320.000000    boundheight:480.000000
        //2012-08-03 23:21:45.719 DinkMixer[599:c07] boundx:0.000000    boundy:0.000000


        CGRect appBound = [[UIScreen mainScreen]applicationFrame];  //返回的是不带有状态栏的Rect
        NSLog(@"appBoundwith:%f    boundheight:%f",appBound.size.width,appBound.size.height); 
        NSLog(@"appBoundx:%f    boundy:%f",appBound.origin.x,appBound.origin.y);
        //2012-08-03 23:21:45.720 DinkMixer[599:c07] appBoundwith:320.000000    boundheight:460.000000
        //2012-08-03 23:21:45.720 DinkMixer[599:c07] appBoundx:0.000000    boundy:20.000000


        //很明显状态栏占用了空间20像素
      
        MasterViewController *masterViewController = [[[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil] autorelease];
    //根据nib文件的名称来创建一个视图控制器

        self.navigationController = [[[UINavigationController alloc] initWithRootViewController:masterViewController] autorelease];
    //创建一个导航控制器,并指定该导航控制器的根视图控制器为上面建立的masterViewController

        self.window.rootViewController = self.navigationController;//
    窗体(window)有一个根视图控制器——这个视图控制器负责配置当窗体显示时最先显示的视图。要让你的视图控制器的内容显示在窗体中,需要去设置窗体的根视图控制器为你的视图控制器。
       
       
     [self.window makeKeyAndVisible];//这行代码会让包含了视图控制器视图的Window窗口显示在屏幕上。
        return YES;
    }
    转自:http://blog.sina.com.cn/s/blog_74f70b7901017f9t.html
  • 相关阅读:
    Linux 如何改变文件属性与权限: chgrp, chown, chmod
    Linux 路径与命令搜寻顺序
    Log level with log4j and Spark
    java.lang.IllegalStateException: availableProcessors is already set to [4], rejecting [4]
    max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
    JavaScript Promise异步实现章节的下载显示
    npm-folders
    the user operation is waiting for building workspace to complete解决办法
    Eclipse,新建web项目后 出现jax-ws webservice
    ServletContext在tomcat启动的时候创建
  • 原文地址:https://www.cnblogs.com/mohe/p/3824226.html
Copyright © 2011-2022 走看看