如何使用代码的方式进行Autoresizing布局

14 篇文章 0 订阅
8 篇文章 0 订阅

当子视图直接是用代码的方式创建时,就无法在Storyboard或xib中对其进行Autosizing的设置和操作,此时就需要用代码的方式使用Autoresizing技术。本案例将学习如何使用代码的方式进行Autoresizing布局,使界面上的两个按钮始终保持在屏幕的右上角和右下角

实现此案例需要按照如下步骤进行。

步骤一:创建项目,添加按钮控件

首先创建一个SingleViewApplication项目。在TRViewController.m文件的viewDidLoad方法中创建两个UIButton控件,分别设置两个button的frame属性,将两个button放置在屏幕的右上角和右下角,代码如下所示:


    
    
  1. UIButton *btn1 = [UIButton buttonWithType:UIButtonTypeSystem];
  2. btn1.frame = CGRectMake(self.view.bounds.size.width - 20 - 80, self.view.bounds.size.height - 20 - 35, 80, 35);
  3. btn1.backgroundColor = [UIColor lightGrayColor];
  4. [self.view addSubview:btn1];
  5. UIButton *btn2 = [UIButton buttonWithType:UIButtonTypeSystem];
  6. btn2.frame = CGRectMake(self.view.bounds.size.width - 20 - 80, 20, 80, 35);
  7. btn2.backgroundColor = [UIColor lightGrayColor];
  8. [self.view addSubview:btn2];

步骤二:设置Button的autoresizingMask属性,进行Autoresizing布局

通过设置Button的autoresizingMask属性,进行Autoresizing布局,autoresizingMask属性是UIViewAutoresizing的枚举类型。

首先使用代码分别将btn1相对于父视图的上边距和左边距固定,即将btn1.autoresizingMask设置为UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleTopMargin。

然后使用代码分别将btn2相对于父视图的下边距和左边距固定,即将btn2.autoresizingMask设置为UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleBottomMargin,代码如下所示:


    
    
  1. //设置button的Autoresizing布局属性,将按钮btn1相对于父视图的上边距和左边距固定
  2. btn1.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleTopMargin;
  3. //将btn2相对于父视图的左边距和下边距固定
  4. btn2.autoresizingMask = UIViewAutoresizingFlexibleLeftMargin | UIViewAutoresizingFlexibleBottomMargin;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值