主要内容:
1.iOS介绍
2.iOS主要做什么
3.UI介绍
4.UIWindow
这是UI阶段的第一节课主要介绍iOS系统,以及相关的一些知识。还有做为iOS开发者我们应该如何创建我们的第一个UI程序。
iOS介绍:
iOS是苹果公司的移动操作系统,主要用于iPhone、iPad、iPad Mini、iPod Touch等移动产品。
iOS开发主要做什么:
做为一个iOS开发者,我们可以开发许许多多的我们日常生活中常用的软件,比如团购类的软件、地图导航类的软件、阅读软件、还有最近一直非常抢眼的智能家居软件、游戏等等的应用程序。
而且相对于Android平台,iOS平台用户拥有更好的付费习惯,iOS开发者比安卓开发者更容易赚钱。
UI介绍:
UI(User Interface):用户界面,用户能看到的各种各样的页面元素。(PS:在公司里边有一个职位大家平常也就他UI,他们是用户界面设计师,平常主要工作给程序猿们设计图片和切图)
iOS开发的话其实也就是把各种各样的UI空间集合到一起,再加上一些逻辑算法和网络数据就构成了我们所使用的软件。
想要开发出一款精美的应用程序,需要熟练掌握各种UI控件的用法。
UIWindow:
window是窗口的意思,每个app都需要借助window将内容展现给用户看。在iOS中,使用UIWindow类来表示窗口,通常一个应用程序只创建一个UIWindow对象。window的主要作用是呈现内容给用户,我们不会对window做太多操作。
如何创建window?
在创建window的时候,需要指定window的大小。通常window的大小(frame)与屏幕(UIScreen)大小一致。
示例代码如下:
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
这里的[UIScreen mainScreen]是获取设备的整个屏幕,bounds是屏幕的边界也就是屏幕的大小。这里也就是创建了一个UIWindow的对象,然后指定了window的大小为屏幕的大小。
一般UIWindow对象不用咱们自己创建,Xcode在创建工程的时候默认已经给我们创建好了,下边来看下AppDelegate.h文件:
// AppDelegate.h
// UILesson-UIWindowUIViewUILabel
// 芒果iOS
// Created by 张茫原 on 15/11/18.
// Copyright © 2015年 芒果科技. All rights reserved.
#import <UIKit/UIKit.h>
@interface AppDelegate : UIResponder <UIApplicationDelegate>
//window是应用程序的窗口,每一个app都需要借助UIWindow对象将内容呈现给用户
//通常一个应用程序只有一个窗口(也就是之创建一个UIWindow对象)
//window的作用:呈现给用户UI界面,window只负责承载,但是我们并不会对window做过多的操作
@property (strong, nonatomic) UIWindow *window;
@end
上边代码中应用程序的代理类中默认已经创建好了一个UIWindow的属性。
下边来看下AppDelegate.m文件:
// AppDelegate.m
// UILesson-UIWindowUIViewUILabel
// 芒果iOS
// Created by 张茫原 on 15/11/18.
// Copyright © 2015年 芒果科技. All rights reserved.
//
#import "AppDelegate.h"
//引入自定义ViewController的头文件
#import "RootViewController.h"
@interface AppDelegate ()
@end
@implementation AppDelegate
//应用程序启动之后进入此方法
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//初始化UIWindow对象,并且设置window的大小
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.应用程序启动之后书写自定义代码(咱们自己需要写的代码)的位置
//在设置跟视图之前,需要先实例化(初始化)出来一个RootViewController的对象
//UIViewController创建之后默认的背景颜色是透明的
RootViewController *rootVC = [[RootViewController alloc] init];
//把rootVC做为window的根视图
self.window.rootViewController = rootVC; //rootVC引用计数为2
//alloc之后需要release
[rootVC release];
//把winow背景颜色设置为红色
self.window.backgroundColor = [UIColor redColor];
[self.window makeKeyAndVisible];
return YES;
}
下边咱们就可以设置window的根视图了。咱们之后的代码就可以转移到RootViewController里写了。