UIKit & UIWindow

UIKit & UIWindow

0.UIKit 完整继承关系结构图

UIKit 完整继承关系结构图
Alt text

1.UIKit

UIKit 是一个提供iOS上图形,事件驱动的框架(主要有三大基类).
1. UIView 视图基类
2. UIViewController 视图控制器基类
3. UIResponder 可以接收触摸事件的基类对象
> 下面说的窗口是UIView视图的一个之类,其主要功能是:
1. 提供一个区域来显示视图
2. 将事件分发给视图,子视图.
- 一个应用通常只有一个窗口.

2.UIWindow

1. 什么是UIWindow

 窗口UIWindow继承自UIView:它包含了应用程序的可视化内容,它为视图和其他应用程序对象在触摸事件中提供关键性作用,它与视图控制器一起写作来呈现数据.

2. UIWindow 与 UIView

 在iOS中,使视图和窗口显示应用程序的内容,UIWindow本身不具有任何可见的内容,但它对于应用程序的UIView提供了一个基本的容器. UIView定义你想要用什么内容来布局你屏幕,例如可显示的图形,文本,按钮,动画或者混合的内容,还可以使用UIView来管理和组织其他UIView.

3. 窗口UIWindow的创建

创建一个工程后,Xcode会在AppDelegate.m中自动创建一个UIWindow.

 /**
  创建一个全屏的UIWindow,其中UIScreen对象指的是当前iOS设备的物理屏幕.
  [UIScreen mainScreen].bounds]代表当前屏幕的大小
  */
 self.window = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
 //设置颜色
 self.window.backgroundColor = [UIColor purpleColor];
 //创建一个ViewController
 UIViewController * viewController = [[UIViewController alloc]init];
 //并指定为Window的根控制器 / rootViewController /
 self.window.rootViewController = viewController ;
 //设定Window显示并可见 / makeKeyAndVisible /
 [self.window makeKeyAndVisible];

4. UIWindow 级别

 > UIWindow 有三个显示的优先级别:
     - UIWindowLevelAlert       级别最高    2000.00
     - UIWindowLevelStatusBar   级别中等    1000.00
     - UIWindowLevelNormal      级别最低    0.00

//设置一个窗口的级别(以Window为例)
 self.window.windowLevel = UIWindowLevelAlert ;
//获得一个窗口的级别
 NSLog(@"Level : %.2f ",self.window.windowLevel);
//打印优先级别的具体值
 NSLog(@" - UIWindowLevelAlert       级别最高 %.2f",UIWindowLevelAlert);
 NSLog(@" - UIWindowLevelStatusBar   级别中等 %.2f",UIWindowLevelStatusBar);
 NSLog(@" - UIWindowLevelNormal      级别最低 %.2f",UIWindowLevelNormal);

2015-04-14 01:22:12 Write By MarkDown © Yun.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值