UIView
什么是UIView
- UIVIew就是
控件/視圖
- 用戶在屏幕上看到的東西都是UIView
- 它是
所有控件的父類
!!- 蘋果將擁有共同屬性的空間對象抽取出了UIView類,所有的控件
繼承
自UIView
- 蘋果將擁有共同屬性的空間對象抽取出了UIView類,所有的控件
父控件(superview),子控件(subviews)
- 每一個控件好比一個容器
- 可以將其他的控件放到該控件的內(nèi)部
- 例如:將A控件放入B控件,那么B就是A控件的父控件,A就是B控件的子控件.(類似集合的包含,與被包含關(guān)系)
- 可以將其他的控件放到該控件的內(nèi)部
- 每一個控制器都是一個UIView
-
控制器本身不可見
,可見的是控制器的View
-
- 每一個控制器中都有一個UIView的屬性
UIView的常見屬性
- 獲得自己的所有的父控件對象:@property (nonatomic,readonly) UIView *superview;
- 獲得自己所有子控件對象:@property (nonatomic,readonly,copy) NSArray *subviews;
- 控件的形變(旋轉(zhuǎn),平移,縮放等):
@property (nonatomic)CGAffineTransform transform;
- 控制的ID(標(biāo)識),父控件可以通過tag來找到對應(yīng)的子控件:
@property (nonatomic) NSInteger tag;
- 控制矩形框在父控件中的位置和尺寸(以父控件的左上角為原點):
@property (nonatomic) CGRect frame;
- 控件矩形框的位置和尺寸(以自己的左上角的坐標(biāo)為原點,所以一般bounds的x,y值是0)
@property (nonatomic) CGRect bounds;
- 控件中點的位置(以父控件的左上角為坐標(biāo)原點):
@property (nonatomic) CGPoint center;
frame : 如果需要設(shè)置位置和尺寸,使用frame設(shè)置
center : 如果僅僅需要設(shè)置位置,直接使用center
bounds : 如果僅僅需要設(shè)置尺寸,直接使用bounds
UIView的常見方法
添加一個子控件view
- (void)addSubview:(UIView *)view;
將自己從父控件中移除
- (void)removeFromSuperview;
根據(jù)一個tag標(biāo)識找出對應(yīng)的控件(一般是子控件)
- (UIView)viewWithTag:(NSInteger) tag;
UIKit坐標(biāo)系
- 在UIKit中,坐標(biāo)系的原點(0,0)在左上角,
x向右正向延伸
,y向下正向延伸