ios4--UIView的常见属性(尺寸和位置)

//
//  ViewController.m
//  08-UIView的常见属性(尺寸和位置)
//
//  frame:相对于父控件左上角定位
//  bounds:改变长宽,左上角是相对于自己
//  center:

#import "ViewController.h"

@interface ViewController ()
/** label */
@property (nonatomic, weak) UILabel *label;

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // 创建UILabel对象
    UILabel *label = [[UILabel alloc] init];
    // 设置frame (位置和尺寸)
    label.frame = CGRectMake(100, 100, 100, 60); //父控件作为原点
    // 设置背景颜色
    label.backgroundColor = [UIColor yellowColor];
    
    // 添加到控制器的view中
    [self.view addSubview:label];  //添加进去了
    self.label = label;
}


- (IBAction)bounds {
    // 改变尺寸  iOS9以后, 中心点不变,向四周延伸
    self.label.bounds = CGRectMake(30, 30, 200, 120);
}


- (IBAction)center {
   // 改变位置
   // self.label.center = CGPointMake(100, 100);
    
    // 显示在最中间
    self.label.center = CGPointMake(self.view.frame.size.width * 0.5, self.view.frame.size.height * 0.5);
    
}

- (IBAction)changeFrame {
    // 方式1
//    self.label.frame = CGRectMake(200, 100, 100, 60);
    
    // 方式2
    self.label.frame = (CGRect){{100, 100}, {100, 100}};
    
    // 方式3
    // 结构体是值传递,不是地址传递
//    self.label.frame.size.width += 100;
    CGRect frame = self.label.frame;
//    frame.origin.x -= 100; // 改变x值
//    frame.origin.y += 100; // 改变y值
//    frame.size.width += 50; // 改变宽度
    frame.size.height += 100; // 改变高度
    self.label.frame = frame;
    

}

@end
原文地址:https://www.cnblogs.com/yaowen/p/7447061.html