zoukankan      html  css  js  c++  java
  • 使用代码给View添加约束

        _scrollContentView = [[UIView alloc] init];
        _scrollContentView.backgroundColor = [UIColor redColor];
        [_scrollView addSubview:_scrollContentView];
        
        _scrollContentView.translatesAutoresizingMaskIntoConstraints = NO;
        
        NSLayoutConstraint * scrollContentLeftCT = [NSLayoutConstraint constraintWithItem:_scrollContentView attribute:NSLayoutAttributeLeft relatedBy:NSLayoutRelationEqual toItem:_scrollContentView.superview attribute:NSLayoutAttributeLeft multiplier:1.0 constant:0];
        
        NSLayoutConstraint * scrollContentTopCT = [NSLayoutConstraint constraintWithItem:_scrollContentView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:_scrollContentView.superview attribute:NSLayoutAttributeTop multiplier:1.0 constant:0];
        
        NSLayoutConstraint * scrollContentRightCT = [NSLayoutConstraint constraintWithItem:_scrollContentView attribute:NSLayoutAttributeRight relatedBy:NSLayoutRelationEqual toItem:_scrollContentView.superview attribute:NSLayoutAttributeRight multiplier:1.0 constant:0];
        
        NSLayoutConstraint * scrollContentbottomCT = [NSLayoutConstraint constraintWithItem:_scrollContentView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:_scrollContentView.superview attribute:NSLayoutAttributeBottom multiplier:1.0 constant:0];
        
        NSLayoutConstraint * scrollContentVerticallCT = [NSLayoutConstraint constraintWithItem:_scrollContentView attribute:NSLayoutAttributeCenterY relatedBy:NSLayoutRelationEqual toItem:_scrollContentView.superview attribute:NSLayoutAttributeCenterY multiplier:1.0 constant:0];
        
        NSLayoutConstraint * scrollContentWidthCT = [NSLayoutConstraint constraintWithItem:_scrollContentView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:nil attribute:NSLayoutAttributeWidth multiplier:1.0 constant:WIDTH];
        
        [_scrollContentView.superview addConstraints:@[scrollContentLeftCT,scrollContentTopCT,scrollContentRightCT,scrollContentbottomCT,scrollContentVerticallCT]];
        [_scrollContentView.superview.superview addConstraint:scrollContentWidthCT];
    

     用代码写约束很麻烦,而且很容易出错,而且容易显示不出来,原因可能是少了一句话

        _scrollContentView.translatesAutoresizingMaskIntoConstraints = NO;

     如果写了这句话还不能显示出来,就把superView也添加以下这个属性

    关于height,和Width这两个属性,第二个item应该为空,该约束应该添加到自己身上,而不是superView身上

    关于bottom这个约束,如果想要与superView的底部有一点空隙,constant需要写成负数

  • 相关阅读:
    【luogu P1307 数字反转】 题解
    【luogu P1111 公路修建】 题解
    字符串与正则运算
    Java 正则表达式的总结和一些小例子
    js -history.back(-1)和history.go(-1) 区别
    js
    html _ 提取html片段内的纯文本
    vue-x action 的相互调用
    java通过过滤器 设置跨域允许
    git-搭建企业git服务器
  • 原文地址:https://www.cnblogs.com/chebaodaren/p/5048594.html
Copyright © 2011-2022 走看看