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

主要内容:

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里写了。










  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值