您的位置:首页 > 产品设计 > UI/UE

芒果iOS开发UI课程第一节UIWindow

2015-11-18 21:52 706 查看
主要内容:

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;

}

    我们看到AppDelegate.m文件中didFinishLaunchingWithOptions:里边UIWindow对象已经被创建好了,window下边有一行注释:Override point for customization after application launch.
应用程序启动之后书写自定义代码的位置。
    下边咱们就可以设置window的根视图了。咱们之后的代码就可以转移到RootViewController里写了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息