Autolayout布局模式

来源:互联网 发布:淘宝侵犯肖像权扣几分 编辑:程序博客网 时间:2024/06/06 00:05

import “ViewController.h”

@interface ViewController ()

@end

@implementation ViewController

  • (void)viewDidLoad {
    [super viewDidLoad];
    /*
    AutoLayout由来
    IOS6之后出现的一种新的布局方式,用于取代原先的Autosizing系统的布局方式
    Autolayout是指定视图和其父视图或者视图和其兄弟之间的关系来布局
    在Autolayout当中,我们使用约束来描述视图和视图之间的关系
    Oc专门为开发者封装了一个类NSlayoutConstraint来帮助开发者描述布局

    */

    /*
    参数的意义
    1,(id)item:约束中的两个视图对象
    2,attribute:描述视图的对齐特征
    3,relateBy:描述两个视图attribute的关系
    4,multiplier:缩放比例
    5,constant:偏移量

    视图1.属性 关系 视图2.属性*缩放比例+偏移量

    视图1.左边 ==视图2.左边*1+0;
    [NSLayoutConstraint constraintWithItem:view1 attribute:左边 relatedBy:== toItem:view2 attribute:左边 multiplier:1 constant:0]
    视图1.宽度 ==100
    [NSLayoutConstraint constraintWithItem:view1 attribute:宽度 relatedBy:== toItem:nil attribute:nil multiplier:0 constant:100]

    */
    //
    // UIView *view1 = [UIView new];
    // UIView *view2 = [UIView new];
    // UIView *view3 = [UIView new];
    // //启用Autolayout布局方式
    // view1.translatesAutoresizingMaskIntoConstraints = NO;
    // view1.backgroundColor = [UIColor greenColor];
    // view2.translatesAutoresizingMaskIntoConstraints = NO;
    // view2.backgroundColor = [UIColor redColor];
    //
    // NSLayoutConstraint *constraint1 = [NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeRight multiplier:1 constant:10];
    // NSLayoutConstraint *constraint2 = [NSLayoutConstraint constraintWithItem:view2 attribute: NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeRight multiplier:1 constant:20];
    //
    //
    //
    // [self.view addConstraint:constraint1];
    //
    //
    //
    // [self.view addConstraint:constraint2];

    UIView *view1 = [UIView new ];view1.translatesAutoresizingMaskIntoConstraints = NO;view1.backgroundColor = [UIColor redColor];[self.view addSubview:view1];NSLayoutConstraint *constraint1 = [NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeCenterX multiplier:1 constant:0];NSLayoutConstraint *constraint2 = [NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeCenterY relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeCenterY multiplier:1 constant:0];NSLayoutConstraint *constraint3 = [NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1 constant:100];NSLayoutConstraint *constraint4 = [NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeNotAnAttribute multiplier:1 constant:100];[self.view addConstraint:constraint1];[self.view addConstraint:constraint2];[self.view addConstraint:constraint3];[self.view addConstraint:constraint4];

}

  • (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
    }

@end

0 0
原创粉丝点击