标签:
UIWindow是一种特殊的UIView,通常在一个app中只会有一个UIWindow。
iOS程序启动完毕后,创建的第一个视图控件就是UIWindow,接着创建控制器的view,最后将控制器的view添加到UIWindow上,于是控制器的view就显示在屏幕上了。一个iOS程序之所以能显示到屏幕上,完全是因为它有UIWindow。也就说,没有UIWindow,就看不见任何UI界面。
先创建UIwindow,再创建控制器,创建控制器的view,然后将控制器的view添加到UIWindow上。
文档中关于该部分的解释:
1、在Appdelegate.m中添加如下代码,以创建UIWindow
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
//创建主窗口
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
//设置背景颜色
self.window.backgroundColor = [UIColor whiteColor];
//使用window成为主窗口并且让其可见
[self.window makeKeyAndVisible];
return YES;
}
2、添加View至UIWindow
创建一个ControllerView vc,并将其设置为UIWindow的根控制器。
self.window.rootviewcontroller=vc;
注:也可直接将view添加进UIWindow中,但不建议这么做,这样不方便管理。
有storyboard的项目中的创建过程:
在调用didFinishLaunchingWithOptions:方法之前,会加载storyboard,在加载的时候创建一个UIWindow。
可以在info.plist中决定使用哪个storyboard。
创建的UIWindow其根视图为箭头所指的视图。
个人认为storyboard做了部分UIWindow的工作,而xib则是做了部分ViewController的工作。
本文是在阅读下文所整理的笔记,仅供参考。
iOS开发UI篇 UIWindow简单介绍
标签:
原文地址:http://www.cnblogs.com/limaofuyuanzhang/p/4649797.html