代碼創建約束01

#import "ViewController.h"


@interface ViewController ()


@end


@implementation ViewController


- (void)viewDidLoad {

    [superviewDidLoad];

    

   //創建兩個view

    UIView *view1 = [[UIViewalloc]init];

    UIView *view2 = [[UIViewalloc]init];

    view1.translatesAutoresizingMaskIntoConstraints =NO;

    view2.translatesAutoresizingMaskIntoConstraints =NO;

    //創建view1約束

    NSLayoutConstraint *view1left = [NSLayoutConstraintconstraintWithItem:view1 attribute:NSLayoutAttributeLeadingrelatedBy:NSLayoutRelationEqualtoItem:self.viewattribute:NSLayoutAttributeLeadingmultiplier:1.0fconstant:0.0f];

    NSLayoutConstraint *view1top = [NSLayoutConstraintconstraintWithItem:view1 attribute:NSLayoutAttributeToprelatedBy:NSLayoutRelationEqualtoItem:self.viewattribute:NSLayoutAttributeTopmultiplier:1.0fconstant:0.0f];

    NSLayoutConstraint *view1width = [NSLayoutConstraintconstraintWithItem:view1 attribute:NSLayoutAttributeWidthrelatedBy:NSLayoutRelationEqualtoItem:nilattribute:NSLayoutAttributeNotAnAttributemultiplier:1.0fconstant:100.0f];

    NSLayoutConstraint *view1height = [NSLayoutConstraintconstraintWithItem:view1 attribute:NSLayoutAttributeHeightrelatedBy:NSLayoutRelationEqualtoItem:nilattribute:NSLayoutAttributeNotAnAttributemultiplier:1.0fconstant:55.0f];

    [self.viewaddSubview:view1];

    //激活約束

    view1left.active = YES;

    view1top.active = YES;

    view1width.active = YES;

    view1height.active = YES;


    

    //創建view2約束

    NSLayoutConstraint *view2trail = [NSLayoutConstraintconstraintWithItem:view2 attribute:NSLayoutAttributeTrailingrelatedBy:NSLayoutRelationEqualtoItem:self.viewattribute:NSLayoutAttributeTrailingmultiplier:1.0fconstant:0.0f];

    NSLayoutConstraint *view2top = [NSLayoutConstraintconstraintWithItem:view2 attribute:NSLayoutAttributeTrailingrelatedBy:NSLayoutRelationEqualtoItem:self.viewattribute:NSLayoutAttributeTrailingmultiplier:1.0fconstant:0.0f];

    NSLayoutConstraint *view2width = [NSLayoutConstraintconstraintWithItem:view2 attribute:NSLayoutAttributeWidthrelatedBy:NSLayoutRelationEqualtoItem:nilattribute:NSLayoutAttributeNotAnAttributemultiplier:1.0fconstant:100.0f];

    NSLayoutConstraint *view2height= [NSLayoutConstraintconstraintWithItem:view2 attribute:NSLayoutAttributeHeightrelatedBy:NSLayoutRelationEqualtoItem:nilattribute:NSLayoutAttributeNotAnAttributemultiplier:1.0fconstant:55.0f];

    [self.viewaddSubview:view2];

    //激活

    view2trail.active = YES;

    view2top.active = YES;

    view2width.active =YES;

    view2height.active = YES;

    

    //設置背景顏色

    [view1 setBackgroundColor:[UIColorgreenColor]];

    [view2 setBackgroundColor:[UIColorlightGrayColor]];

}


- (void)didReceiveMemoryWarning {

    [superdidReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}


@end


//如果想設置約束和父類的邊保持距離,比如說右邊和父類右邊保持64的距離 一定要寫成負的 因爲正的話就會超出父類右邊64


NSLayoutConstraint *doneRight = [NSLayoutConstraint constraintWithItem:doneBtn attribute:NSLayoutAttributeTrailing relatedBy:NSLayoutRelationEqual toItem:self attribute:NSLayoutAttributeTrailing multiplier:1.0f constant:-64.0f];


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章