• autoLayout 纯代码


    SB中拖好空间,让后分别在,Pin,Align,Resolve Auto Layout Issues三个面板中设置好约束就好了。

    用存代码的方式给控件添加约束,完成自动布局:

    利用NSLayoutConstraint类创建具体的约束对象。apple提供了两种方法

    - (void)addConstraint:(NSLayoutConstraint *)constraint;

    - (void)addConstraints:(NSArray *)constraints;

    在控制器的-viewDidLoad方法里

    - (void)viewDidLoad {

        [super viewDidLoad];

        UIView *subView = [UIView allc] initWithFrame:CGRectMake(100,200,100,100)];

        subView.backgroundColor = [UIColor lightGray];

        //设置 autoresizing 无效 不认会把我们的约束无效化

        subView.translatesAutoresizingMaskIntoConstraints = NO;

        [self.view addSubview:subView];

        //距离父视图左边的距离 约束

        NSLayoutConstraint *leftConstraint = [NSLayoutConstraint constraintWithItem:subView attribute:NSLayoutAttributeLeft relatedBy:NSLayoutRelatinEqual toItem:nil attribute:NSLayoutAttributeLeft multiplier:1.0 constant:100];

        //距离父视图顶部的距离 约束

        NSLayoutConstraint *topConstraint = [NSLayoutConstraint constraintWithItem:subView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelatinEqual toItem:nil attribute:NSLayoutAttributeTop multiplier:1.0 constant:100];

        //subView 的宽带约束

        NSLayoutConstraint *widthConstraint = [NSLayoutConstraint constraintWithItem:subView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelatinEqual toItem:nil attribute:NSLayoutAttributeNotAnAtribute multiplier:0.0 constant:100];

        //subView 的高带约束

        NSLayoutConstraint *heightConstraint = [NSLayoutConstraint constraintWithItem:subView attribute:NSLayoutAttributeHeight relatedBy:NSLayoutRelatinEqual toItem:nil attribute:NSLayoutAttributeNotAnAtribute multiplier:0.0 constant:100];

        

        [self.view addConstraint:leftConstraint];

        [self.view addConstraint:TopConstraint];

        [self.view addConstraint:heightConstraint];

        [self.view addConstraint:widthConstraint];

    }

  • 相关阅读:
    windows php
    使用 powershell 的 grep 过滤文本
    一个命令巧妙查看git版本演变史
    面试官一听就想发offer的自我介绍,到底是怎么做的?
    用了5年的git,你竟然还不知道它的工作原理
    接口测试到底怎么做,看完这篇文章彻底搞清楚
    一文学会jenkins pipline自动化构建
    Fiddler经典版安装设置流程
    没想到一个简单的重命名,在git中也有这么多学问
    1小时学会jenkins集成邮件/微信/钉钉通知
  • 原文地址:https://www.cnblogs.com/wjw-blog/p/5646734.html
Copyright © 2020-2023  润新知