IOS开发基础UIView
什么是控件?
- 屏幕上面所有的UI元素都叫控件 有很多书上也称控件为视图或组件
创建的控件:
按钮 UIButton 文本 UILabel 文本框UItextField 开关UISwitch 等都是控件
控件都有一些共同的属性: 比如控件都有 位置 尺寸 背景色等
苹果将控件的共同属性都抽取到父类的UIView中
所有的控件最终都是继承自UIView
UIButton UILabel 都继承自UIView
UIView是最干净的控件 拥有尺寸 位置 背景色等基本属性
父控件和子控件:
每个控件都是个容器 能够容纳其他的控件
内部小控件都是大控件的子控件 大控件是内部小控件的父控件
每一个控制器(UIViewController)内部都有个默认的UIView属性
控制器中管理的其他所有控件都是这个view的直接或者间接子控件
UIView 常见属性:
@property(nonatomic,readonly) UIView *superview;
➢ 获得⾃自⼰己的⽗父控件对象
@property(nonatomic,readonly,copy) NSArray *subviews;
➢ 获得⾃自⼰己的所有⼦子控件对象
@property(nonatomic) NSInteger tag;
➢ 控件的ID(标识),⽗父控件可以通过tag来找到对应的⼦子控件
@property(nonatomic) CGAffineTransform transform;
➢ 控件的形变属性(可以设置旋转⾓角度、比例缩放、平移等属性)
@property(nonatomic,readonly) UIView *superview;
➢ 获得⾃自⼰己的⽗父控件对象
@property(nonatomic,readonly,copy) NSArray *subviews;
➢ 获得⾃自⼰己的所有⼦子控件对象
@property(nonatomic) NSInteger tag;
➢ 控件的ID(标识),⽗父控件可以通过tag来找到对应的⼦子控件
@property(nonatomic) CGAffineTransform transform;
➢ 控件的形变属性(可以设置旋转⾓角度、⽐比例缩放、平移等属性)
@property(nonatomic) CGRect frame;
➢ 控件矩形框在⽗父控件中的位置和尺⼨寸(以⽗父控件的左上⾓角为坐标原点)
@property(nonatomic) CGRect bounds;
➢ 控件矩形框的位置和尺⼨寸(以⾃自⼰己左上⾓角为坐标原点,所以bounds的x、y⼀一般为0)
@property(nonatomic) CGPoint center;
➢ 控件中点的位置(以⽗父控件的左上⾓角为坐标原点)
UIKit坐标系
在UIKit中 坐标系的原点(0,0)在左上角 x值 向右正向延伸 y值向下正向延伸