• 窗口与视图的基本概念


    一、UIWindow

    1.UIWindow和UIView的关系

    (1)UIWindow是UIView的一个子类,提供视图的显示区域;

    (2)UIWindow继承自UIView,包含应用程序的可视区域。

    2.UIWindow的创建

        //1.获取屏幕尺寸
        UIScreen *screen=[UIScreen mainScreen];
        CGRect rect=screen.bounds;
        //2.创建窗口,并铺满整个屏幕
        self.window=[[UIWindow alloc] initWithFrame:rect];
        //3.给窗口添加背景色
        self.window.backgroundColor=[UIColor colorWithRed:1.0 green:1.0 blue:0.0 alpha:1.0];
        //    self.window.backgroundColor=[UIColor whiteColor];
        //4.显示窗口
        [self.window makeKeyAndVisible];

    二、iOS坐标系统

    1.创建视图View

        //创建视图v0,v0作为UIWindow的子视图
        UIView *v0=[[UIView alloc] initWithFrame:CGRectMake(50, 50, 200, 200)];
        v0.backgroundColor=[UIColor blueColor];
        [self.window addSubview:v0];
        
        //创建视图v1,v1作为UIWindow的子视图
        UIView *v1=[[UIView alloc] initWithFrame:CGRectMake(100, 100, 200, 200)];
        v1.backgroundColor=[UIColor redColor];
        [self.window addSubview:v1];
        
        //创建视图v2,v2作为UIWindow的子视图
        UIView *v2=[[UIView alloc]initWithFrame:CGRectMake(150, 150, 200, 200)];
        v2.backgroundColor=[UIColor greenColor];
        [self.window addSubview:v2];

    2.frame、bounds、center的关系

    frame:表示视图在父视图的坐标系统里的位置和大小。

    bounds:表示视图在本身的坐标系统里的位置和大小。

    center:表示视图在父视图的坐标系统里的中点位 置。

    注:改变其中一个属性会影响其它两个。

        v2.frame = CGRectMake(0, 0, 200, 200);
    //  v1.center = CGPointMake(100, 100);
    //  v1.bounds = CGRectMake(0, 0, 200, 200);
    //  v1.frame = CGRectMake(200, 200, 10, 200);
  • 相关阅读:
    解决Failure to transfer org.apache.maven.plugins:maven-surefire-plugin:pom:2.12.4
    spring task:annotation-driven 定时任务
    Windows注意目录
    vbScript 备忘
    java 将字符串数组变为字典顺序排序后的字符串数组
    jquery选中以什么开头的元素
    java如何将毫秒数转为相应的年月日格式
    jstl foreach 取index
    jQuery 效果
    js判断一个字符串是以某个字符串开头
  • 原文地址:https://www.cnblogs.com/hecheng0314/p/4409956.html
Copyright © 2020-2023  润新知