UIView的常見屬性
- NSArray *subviews
- 所有的子控件
- 數組元素的順序決定著子控件的顯示層級順序(下標越大的,越顯示在上面)
UIView的常見方法
- addSubview:
- 添加一個子控件
- 使用這個方法添加的子控件會被塞到subviews數組的最后面
- 可以使用下面的方法調整子控件在subview數組中的順序
// 重要屬性
// 獲取自己父視圖的對象
@property(nullable, nonatomic,readonly) UIView *superview;
// 獲取自己所有的子視圖
@property(nonatomic,readonly,copy) NSArray<__kindof UIView *> *subviews;
// 視圖矩形框在父視圖中的位置和尺寸(以父視圖的左上角為坐標原點)
@property(nonatomic) CGRect frame;
// 視圖矩形框的位置和尺寸(以自身左上角為坐標原點)
@property(nonatomic) CGRect bounds;
// 視圖的中心位置(以父視圖的左上角為坐標原點)
@property(nonatomic) CGPoint center;
// 視圖的標識,父視圖可以通過tag來找到對應的子視圖
@property(nonatomic) NSInteger tag;
// 視圖的形變屬性(可以設置、旋轉角度、平移等屬性)
@property(nonatomic) CGAffineTransform transform;
// 重要方法
// 從父視圖中移除
- (void)removeFromSuperview;
// 在某一索引處插入子視圖
- (void)insertSubview:(UIView *)view atIndex:(NSInteger)index;
// 改變兩個子視圖的索引
- (void)exchangeSubviewAtIndex:(NSInteger)index1 withSubviewAtIndex:(NSInteger)index2;
// 添加一個子視圖
- (void)addSubview:(UIView *)view;
// 在子視圖下面插入一個視圖
- (void)insertSubview:(UIView *)view belowSubview:(UIView *)siblingSubview;
// 在子視圖上面插入一個視圖
- (void)insertSubview:(UIView *)view aboveSubview:(UIView *)siblingSubview;
// 將子控件view放到數組的最后面,顯示在最上面
- (void)bringSubviewToFront:(UIView *)view;
// // 將子控件view放到數組的最前面,顯示在最下面
- (void)sendSubviewToBack:(UIView *)view;
// 根據tag標識找出對應的視圖
- (nullable __kindof UIView *)viewWithTag:(NSInteger)tag;
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。