IOS UIWindow 、UIView

UIView

   UIKit ->里面包含了所有可以看得见的视图控件

   UIWindow :窗口 -> IOS应用程序中只能有一个主窗口  一个工程里面有并且只能有一个主窗口

   UIWindow:是用来显示承载可以看到的控件的容器

   UIWindow相当于一个容器 ->所有控件都是一层层添加到窗口上的

   UIWindow 初始化:

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

     [self.window makeKeyAndVisible];//makeKeyAndVisible 让窗口 是主窗口 并且显示在屏幕上

    initWithFrame构造方法 ->在创建一个对象的时候同时给他一个Frame

    获取屏幕边界范围的方法:[UIScreen mainScreen].bounds

    UIView  是一个视图 ->是所有视图类的父类

     视图的位置和自身大小

     frame -> 位置 (是视图里面的一个属性)

     屏幕上是由很多像素点组成

     视图的起始位置 : origin

     窗口的起始位置 :左上角(0,0

     所有子视图都是根据origin(起始点、原点)来定义起始位置

     size -> 尺寸视图本身的大小

     UIView *view =[[UIView alloc]init];

     设置透明度0.0(完全透明)-1.0(不透明)

     透明度为0.0(完全透明)的情况下所有属性、方法类似被禁用

     view.alpha = 0.3;//view的透明度为0.3

     hidden :隐藏 YES:隐藏 NO:不隐藏(默认值是NO不隐藏)

     view.hidden = NO;//view不隐藏

     图层之间的关系

     视图是一层层叠加到一个父视图上的

     父视图是一个承载体子视图是父视图里面的其中的一个元素

     父视图的位置发生改变子视图也会跟随父视图位置一起改变

     [self.window addSubview:view];//添加视图到父视图 -> 如果没有这个方法 创建的视图将不会被显示在屏幕上

    view.frame = CGRectMake(150, 300, 100, 80);//view创建在窗口上坐标为(150,300)的位置并且大小为:宽100,高80

     背景颜色 UIColor ->颜色类 ->创建的对象是一种颜色

     view.backgroundColor = [UIColor greenColor];//设置view的背景颜色为绿色 

   

     UIView *view = [[UIView alloc]init];//创建视图view

     [self.window addSubview:view];//把视图view添加到self.window上面

     view.frame = CGRectMake(305, 630, 100, 100);

     view.backgroundColor = [UIColor purpleColor];


      frame是根据他的父视图来定义他自身的位置的(原点)

      定义frame不要超出父视图的范围超出部分将不再接收任何响应事件

      center 中心点对角线的交点

      center.x = /2+原点的x

      center.y = /2+原点的y

     view.center = CGPointMake(150, 200);

     改变中心点可以改变视图的位置

     只能使用frame在创建视图的时候给他一个位置

     相对于自身的位置原点永远是(0,0

     bounds自身的边境范围 用途:获得视图的宽和高忽略原点

     NSLog(@"%f",view.bounds.size.height);//可以输出view的高

     定时器:隔多少秒去做某件事

 [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(方法) userInfo:nil repeats:10];

      NSTimer定时器的类 定时器初始化的方法

     Interval:间隔单位是秒

     selector:方法选择器 ->用来选择一个方法去执行

     repeats: 重复次数

     target:让谁执行

     隔一秒执行一次start方法


    在同一个父视图里

   UIView *view8 = [[UIView alloc]init];

    view8.frame = CGRectMake(100, 100, 100, 100);

    view8.backgroundColor = [UIColor purpleColor];

    [self.window addSubview:view8];

    UIView *view9 = [[UIView alloc]init];

    view9.frame = CGRectMake(50, 150, 200, 200);

    view9.backgroundColor = [UIColor purpleColor];

    [self.window addSubview:view9];

    1、把一个视图移动到最上面

    [self.window bringSubviewToFront:view8];//把view8移动到最上面

    2、把一个视图移动到下一层

    [self.window sendSubviewToBack:view8];//把view8移动到下一层

    3、交换两个视图的位置

    subviews(所有子视图组成的数组)数组

    初始化视图的顺序就是把视图放到subviews这个数组里的顺序

    改变视图的顺序就是在改变 subviews数组里面元素的位置

    [self.window exchangeSubviewAtIndex:2 withSubviewAtIndex:1];//把窗口上1位置的视图和2位置的视图交换位置

    UIView *view10 = [[UIView alloc]init];//创建视图view10

    [self.window insertSubview:view10 aboveSubview:view9];//插入view10view9上面

    tag:标记标签标号 ->同一个父视图里面的身份证号

    view10.tag = 100;//给view10 设置tag值 可以通过tag 在他的父视图上 找到这个视图

    //viewWhithTag:在一个父视图上面查找有没有tag值是多少的视图

    UIView *v = [self.window viewWithTag:100];//找到父视图上tag值为100的视图view10

    v.backgroundColor = [UIColor whiteColor];//操作v就相当于在操作view10

    4、移除视图

    [v removeFromSuperview];//移除视图v


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值