【原创】第一个iOS应用程序

万事开头难 。斗霜傲雪二十年,堂堂剑气尚寒 。——《诗词三百首》
第一章 窗口与应用程序
【【原创】第一个iOS应用程序】在iOS应用程序中窗口()是视图(View)的载体,每一个应用程序都至少有一个,一般而言也只有一个,在某些特定应用中会出现多个,本文暂不考虑多窗口的情况 。是类的一个实例,当应用程序启动时会创建这个窗口 。当窗口显示出来后,一般来说,开发者就很少再会用到窗口 。
在“iOS开发入门教程”一文中已经描述过创建一个iOS引用程序的过程,这里不做重复 。根据iOS应用程序的生命周期可以发现,每一个iOS应用程序启动的时候都会调用一个启动方法:
- (BOOL) application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;
下面我们就从这里开始,完成第一个iOS应用程序 。
方法全貌如图:
我们先看方法实现的开始和结束有这样两行代码:
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];[self.window makeKeyAndVisible];
首先说明一下这两行代码各自的功能,第一行:以屏幕尺寸为标准初始化一个对象的实例 。第二行:设置实例为主窗口并显示 。这样当应用程序启动后就能看到这个窗口了 。回头再看看,self.从何而来的呢?我们继续追踪 。在“iOS开发入门教程”一文中我们讲过,iOS应用程序的入口是.m,它的头文件对应为.h,我们打开这个头文件,其内容如下:
原来它(self.)来自这里 。此外不难发现,还声明了一个的实例 。
第二章 添加视图2.1 从nib文件初始化视图
再回到上面方法的实现中我们看还剩下下面两行代码:
self.viewController = [[ViewController alloc] initWithNibName: @"ViewController" bundle:nil];self.window.rootViewController = self.viewController;
是创建应用时生成的一个视图控制器(类),我们在结构中可以看到:
显然self.就是这个控制器的一个实例,而方法,顾名思义就是从指定名称的nib文件中初始化这个实例,特别说明:在早期的Xcode中xib本应是nib,后来更名为xib,因此,此处所指的nib即是xib文件 。下面一行即为设置主视图控制器为的实例 。个人理解这里的设置就相当于网站开发中设置网站的主页 。
下面我们添加一点东西,验证一下,打开xib文件,单击视图,让视图处于焦点状态,右侧选中属性设置面板如图设置视图背景颜色:
点击Xcode左上角Run按钮或者 + R快捷键,运行程序,效果如图:
由此证明,我们从xib文件加载的应用程序视图已经成功了 。
2.2 使用脚本添加视图
上一节已经跟大家掩饰了如何使用xib文件创建视图,但是显然强大的iOS开发不可能只有这么一种实现方式,下面我们就看下仅仅使用代码,如何实现上述效果 。