iOS autoresizingMask使用

/*
 UIViewAutoresizingNone                 = 0,      /// 不随父视图的改变而改变
 UIViewAutoresizingFlexibleLeftMargin   = 1 << 0, /// 自动调整view与父视图左间距,保证右间距不变
 UIViewAutoresizingFlexibleWidth        = 1 << 1, /// 自动调整view的宽度,保证左间距和右间距不变
 UIViewAutoresizingFlexibleRightMargin  = 1 << 2, /// 自动调整view与父视图右间距,以保证左间距不变
 UIViewAutoresizingFlexibleTopMargin    = 1 << 3, /// 自动调整view与父视图上间距,以保证下间距不变
 UIViewAutoresizingFlexibleHeight       = 1 << 4, /// 自动调整view的高度,以保证上间距和下间距不变
 UIViewAutoresizingFlexibleBottomMargin = 1 << 5  /// 自动调整view与父视图的下间距,以保证上间距不变
 */

测试代码如下

- (void)viewDidLoad {
    [super viewDidLoad];
    
    UIView *redView = [[UIView alloc] init];
    self.redView = redView;
    [self.view addSubview: redView];
    redView.frame = CGRectMake(100, 100, 300, 300);
    redView.backgroundColor = [UIColor redColor];
    
    UIView *blueView = [[UIView alloc] init];
    [redView addSubview:blueView];
    blueView.backgroundColor = [UIColor blueColor];
    blueView.frame = CGRectMake(50, 50, 100, 100);
    blueView.autoresizingMask = UIViewAutoresizingFlexibleBottomMargin;
    
    
    NSLog(@"%ld",self.view.autoresizingMask);
    NSLog(@"---%d",1 << 1 | 1 << 4);
}

- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
{
    CGRect f = self.redView.frame;
    f.size.width +=5;
    f.size.height +=5;
    self.redView.frame = f;
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测试测...
    七魂之月阅读 4,459评论 1 16
  • 文章来自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鹏阅读 13,029评论 2 126
  • 编写测试可不是一项迷人的工作;然而,由于测试可以避免使你的宝贝应用程序变成一块充斥错误的大垃圾场,所以编写测试又是...
    cosWriter阅读 5,555评论 0 4
  • 1.Adapter 中 isEnable 方法对 ListView 的影响 ,当设置相邻两个item为不可点击时,...
    渐行渐远的术士阅读 2,241评论 0 0
  • jshv
    callalee阅读 1,387评论 0 0

友情链接更多精彩内容