美文网首页
IOS Masonry 学习

IOS Masonry 学习

作者: 透支未来 | 来源:发表于2017-10-25 23:42 被阅读21次
    约束的关系:
    equalTo  <=======>   NSLayoutRelationEqual   等于
    
    lessThanOrEqualTo   <======>  NSLayoutRelationLessThanOrEqual   小于或等于
    
    greaterThanOrEqualTo <=======>  NSLayoutRelationGreaterThanOrEqual  大于或等于
    
     
    NSNumber给约束设置具体的值
    <1>//width >= 200 && width <= 400
    make.width.greaterThanOrEqualTo(@200);
    make.width.lessThanOrEqualTo(@400)
    <2>//creates view.left = view.superview.left + 10
    make.left.lessThanOrEqualTo(@10)
    
    
    使用数组NSArray设置约束
    make.height.equalTo(@[view1.mas_height, view2.mas_height]);
    make.height.equalTo(@[view1, view2]);
    make.left.equalTo(@[view1, @100, view3.right]);
    
    
    
    使用优先级设置约束
    .priorityHigh <======> UILayoutPriorityDefaultHigh     高优先级
    
    .priorityMedium <========> between high and low        介于高/低之间
    
    .priorityLow <=========> UILayoutPriorityDefaultLow   低优先级
    
    make.left.greaterThanOrEqualTo(label.mas_left).with.priorityLow();
    make.top.equalTo(label.mas_top).with.priority(600);
    
    
     
    使用MASCompositeConstraints添加约束
    edges:边缘
    // make top, left, bottom, right equal view2
        make.edges.equalTo(view2);
    
    // make top = superview.top + 5, left = superview.left + 10,
    // bottom = superview.bottom - 15, right = superview.right - 20
        make.edges.equalTo(superview).insets(UIEdgeInsetsMake(5, 10, 15, 20))
    // All edges but the top should equal those of the superview
    make.left.right.and.bottom.equalTo(superview);
    make.top.equalTo(otherView);
     
    size:大小
    // make width and height greater than or equal to titleLabel
        make.size.greaterThanOrEqualTo(titleLabel)
    
    // make width = superview.width + 100, height = superview.height - 50
        make.size.equalTo(superview).sizeOffset(CGSizeMake(100, -50))
     
    center:中心
    // make centerX and centerY = button1
        make.center.equalTo(button1)
    
    // make centerX = superview.centerX - 5, centerY = superview.centerY + 10
        make.center.equalTo(superview).centerOffset(CGPointMake(-5, 10))
     
     
    
    

    相关文章

      网友评论

          本文标题:IOS Masonry 学习

          本文链接:https://www.haomeiwen.com/subject/wvxhpxtx.html