zoukankan      html  css  js  c++  java
  • UIView的概念与使用

    什么是UIView

    • UIView可以称之为控件/视图
    • 屏幕上所有能看到的东西都是UIView
    • 按钮(UIButton)、文本(UILabel)都是控件
    • 控件都有一些共同的属性
      -- 尺寸
      -- 位置
      -- 背景色......
    • 苹果将拥有共同属性的控件对象抽取出了UIView类,所有的控件均继承自UIView类

    父控件与子控件

    • 每一个控件其实都是一个容器,可以将其他控件放到该控件的内部
    • 比如说将A控件放入B控件
      -- 那么A控件就是B控件的子控件,B控件是A控件的父控件
    • 每一个控制器都有一个UIView
      -- 控制器本身是不可见,能够看到的是控制器的View
      -- 每一个控制器中都一个UIVIew的属性,控制器中管理的所有子控件都是该UIView控件的子控件

    UIView的常见属性与方法

    • 常见属性
    @property(nonatomic,readonly) UIView *superview;
    //获得自己的父控件对象
    @property(nonatomic,readonly,copy) NSArray *subviews;
    //获得自己的所有子控件对象
    @property(nonatomic) CGAffineTransform transform;
    //控件的形变属性(可以设置旋转角度、比例缩放、平移等属性)
    @property(nonatomic) NSInteger tag;
    //控件的ID(标识),父控件可以通过tag来找到对应的子控件
    
    • 常见方法
    -(void)addSubview:(UIView *)view;
    //添加一个子控件view
    -(void)removeFromSuperview;
    //将自己从父控件中移除
    -(UIView *)viewWithTag:(NSInteger)tag;
    //根据一个tag标识找出对应的控件(一般都是子控件)
    

    UIKit坐标系

    • 在UIKit中,坐标系的原点(0,0)在左上角,x值向右正向延伸,y值向下正向延伸
    • UIView中与之相关的属性
    @property(nonatomic) CGRect frame;
     //控件矩形框在父控件中的位置和尺寸(以父控件的左上角为坐标原点)
    @property(nonatomic) CGRect bounds;
     //控件矩形框的位置和尺寸(以自己左上角为坐标原点,所以bounds的x、y一般为0)
    @property(nonatomic) CGPoint center;
     //控件中点的位置(以父控件的左上角为坐标原点)
    
  • 相关阅读:
    iOS常用第三方库之Masonry
    iOS超全面试题,面试前看一看,不错
    自学安卓练习作品单词APP(1)-安卓的hello word与有道字典防爬虫破解
    shrio的rememberMe不起作用
    上传组件uploadify在spring中返回406 / Not Acceptable 问题解决
    由max_allowed_packet引发的mysql攻防大战
    又到毕业季你为什么没有工作
    mavan下scala编译中文乱码的问题.以及内存溢出问题解决
    @RestController失效
    BeanInstantiationException: Failed to instantiate [java.time.LocalDateTime]
  • 原文地址:https://www.cnblogs.com/ShaRuru/p/5011713.html
Copyright © 2011-2022 走看看