UIView 详解

  本文介绍的全是代码手写,无 SB 控制器的使用

  UIView表示屏幕上的一块矩形区域,它在App中占有绝对重要的地位,因为IOS中几乎所有可视化控件都是UIView的子类。负责渲染区域的内容,并且响应该区域内发生的触摸事件

  那么, UIView 的主要功能有哪些呢?

  1.管理矩形区域里的内容

  2.处理矩形区域内的事件

  3.子视图的管理

  4.动画

  当然,继承与 UIView 的子类也有这个功能;

  图1就是视图的内层次

图1

  UIView 的基本属性:

  frame和center都是相对于父视图的,bounds是相对于自身的

  frame   是CGRect  frame的origin是相对于父视图的左上角原点(0,0)的位置,改变视图的frame会改变center

  center  是CGPoint  指的就是整个视图的中心点,改变视图的center也会改变frame

  bounds 是CGRect  是告诉子视图本视图的原点位置(通俗的说就是,子视图的frame的origin与父视图的bounds的origin的差,就是子视图相对于父视图左上角的位置,如果结果为负,则子视图在父视图外)

  addSubView 的属性  就是把其他的控件添加到发出这个消息的 View 身上。

  UIView 有许多子类 通过图1我们不难看出来,有许多的子类(UIWindow,UIButton,UILabel,UIScrollView,UITableView...)

  首先是 UIWindow 看名字就能知道,这是个窗口,介绍一个 控件就是先要介绍他的初始化 一般他的初始化是在 APPDelegate中的

  - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions这个代理方法中

  下面就是他的初始化

    //初始化
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    //设置 UIWindow 的背景色
    self.window.backgroundColor = [UIColor whiteColor];
    //显示
    [self.window makeKeyAndVisible];

 

这样我们就建立了一个 UIWindow 

 

补充

程序启动流程

1:
程序的启动流程
// 首先 main函数(作为程序入口)
//  1 创建应⽤用程序(UIApplication)实例
//  2 创建应⽤用程序代理(Application)实例 不能够把所有的代码写在MAIN函数里 可以写代码在Application里 体现封装的特性
//  3 建⽴立事件循环(runloop:死循环,不断检测程序运⾏行状态,是否被触摸、晃动等)
2:
①:
- (void)applicationWillResignActive:(UIApplication *)application {
    NSLog(@"程序将要退出活跃状态");
}
②:
- (void)applicationDidEnterBackground:(UIApplication *)application {
    NSLog(@"程序已经进入后台");
}
③:
- (void)applicationWillEnterForeground:(UIApplication *)application {
    NSLog(@"程序将要进入前台");
}
④:
- (void)applicationDidBecomeActive:(UIApplication *)application {
    NSLog(@"程序已经变成活跃状态");
}
⑤:
- (void)applicationWillTerminate:(UIApplication *)application {
    NSLog(@"程序将要终结"); 
}
⑥:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    NSLog(@"已经完成启动");
}
posted @ 2015-11-14 19:51  YXFBlog  阅读(340)  评论(0编辑  收藏  举报