美文网首页
UI总结-UIView

UI总结-UIView

作者: Dear丶Musk | 来源:发表于2016-05-03 11:24 被阅读189次

                                UI总结-UIView

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    // Override point for customization after application launch.

    self.window = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen]bounds]];

    self.window.backgroundColor = [UIColor whiteColor];

    [self.window makeKeyAndVisible];

    [_window release];

    UIViewController *vc = [[UIViewController alloc]init];

    self.window.rootViewController = vc;

    [vc release];

    //UIView表示屏幕上的一块矩形区域,几乎所有屏幕上能看到的元素都是UIView的或者他的子类

    //UIView负责渲染矩形区域的内容,响应区域中的触摸事件,以及为矩形区域添加动画.

    //UIWindow是iOS中的窗口类,主要负责管理和协调各个试图在设备屏幕上的展现.一个应用程序最好只有一个window

    //window需要在APP启动的时候加载,window的尺寸要与屏幕大小一致.

    //UIWindow继承于UIView

    //创建一个新View

    UIView *aView = [[UIView alloc]initWithFrame:CGRectMake(20, 20, 100, 100)];

    //frame的坐标是相对于父试图而言的.

    //bounds是相对自身坐标系

    NSLog(@"aView bounds = %@",NSStringFromCGRect(aView.bounds));

    NSLog(@"aView frame = %@", NSStringFromCGRect(aView.frame));

    //UIView的属性

    //背景颜色

    aView.backgroundColor = [UIColor yellowColor];

    //frame的中心坐标 center

    aView.center = CGPointMake(70, 100);

    //View的透明度改变 alpha

    aView.alpha = 0.8;

    //是否可以响应点击 userInteractionEnabled

    aView.userInteractionEnabled = YES;

    //是否可以隐藏 hidden

    aView.hidden = NO;

    //内容格式

    aView.contentMode = UIViewContentModeScaleToFill;

    [self.window addSubview:aView];

    [aView release];

    //View 的层级管理

    //UIView的层级关系可以用树形结构来表述,每个View都是一个节点

    //subview总是在superview之上,因为越晚加入的显示在上层.

    //一个父试图可以有多个子试图,但每个子试图只能有一个父试图

    //子试图的坐标是相对于自己的父试图的坐标系,所以在设置位置的时候一定要清楚,当前试图的父试图的位置.

    //先被添加到数组的子试图,位置在最下面,而后添加的在层级的上方

    //可以通过父试图来调整对应子试图的层级关系.

    UIView *bView = [[UIView alloc]initWithFrame:CGRectMake(10, 10, 100, 100)];

    bView .backgroundColor = [UIColor blueColor];

    [aView addSubview:bView];

    [bView release];

    UIView *cView = [[UIView alloc]initWithFrame:CGRectMake(20, 10, 50, 50)];

    [cView setBackgroundColor:[UIColor grayColor]];

    [aView addSubview:cView];

    [cView release];

    //父试图改变一些属性会影响子试图的属性比如,alpha.hidden,frame 等

    //父试图隐藏,子试图也跟着隐藏

    aView.hidden = NO;

    //如果子试图超出父试图的范围可以调用属性clipstobounds裁掉超出的部分

    aView.clipsToBounds = YES;

    //UIView的一些重要方法

    //self.window insertSubview:<#(nonnull UIView *)#> aboveSubview:<#(nonnull UIView *)#>插入一个试图在某个试图的上面

    //self.window insertSubview:<#(nonnull UIView *)#> atIndex:<#(NSInteger)#>插入一个试图在子试图的第几个

    //self.window insertSubview:<#(nonnull UIView *)#> belowSubview:<#(nonnull UIView *)#>插入一个试图在某个试图的下面

    //试图的整理

    //self.window bringSubviewToFront:<#(nonnull UIView *)#>将某个试图放在父试图的最上方.

    //self.window sendSubviewToBack:<#(nonnull UIView *)#>将某个试图放到父试图的最下方.

    //self.window exchangeSubviewAtIndex:<#(NSInteger)#> withSubviewAtIndex:<#(NSInteger)#>交换试图的层级

    [bView removeFromSuperview];//从父试图上移除该试图

    return YES;

    }

    相关文章

      网友评论

          本文标题:UI总结-UIView

          本文链接:https://www.haomeiwen.com/subject/qqnlrttx.html