zoukankan      html  css  js  c++  java
  • Masonry 使用介绍

    1、Masonry其实就是对系统的Autolayout 进行了封装、大大的提高了开发效率 

    2、Masonry用到的是链式编程思想

    #import "ViewController.h"
    #import <Masonry.h>
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        UIView *red = [[UIView alloc] init];
        red.backgroundColor = [UIColor redColor];
        [self.view addSubview:red];
        //masonry 内部默认设置了 translatesAutoresizingMaskIntoConstraints
        red.translatesAutoresizingMaskIntoConstraints = NO;
        [red mas_makeConstraints:^(MASConstraintMaker *make) {
    // 以下几种写法都一样        1。make.left.mas_equalTo(self.view.mas_left).multipliedBy(1.0).with.offset(20);
    
    //       2 make.left.mas_equalTo(self.view.mas_left).offset(20);
    //       3 make.left.mas_equalTo(self.view).offset(20);
    //      4  make.left.offset(20);
    //       5 make.left.and.top.offset(20);
    //        make.left.top.offset(20); and可以省略
    //        make.right.mas_equalTo(self.view).offset(-20);
    //        make.top.mas_equalTo(self.view).offset(20);
    //        make.bottom.mas_equalTo(self.view).offset(-20);
    
            make.edges.equalTo(self.view).insets(UIEdgeInsetsMake(20, 20, 20, 20));
        }];
        //更新约束
        [red mas_updateConstraints:^(MASConstraintMaker *make) {
            make.bottom.offset(-100);
        }];
        //删除之前的约束 重新设置约束
        [red mas_remakeConstraints:^(MASConstraintMaker *make) {
            
        }];
        // Do any additional setup after loading the view.
    }
    
    @end
  • 相关阅读:
    主线程MainThread与渲染线程RenderThread
    杀死进程的几种方式
    Android App的设计架构:MVC,MVP,MVVM与架构经验谈
    动画完全解析(二):补间动画原理及自定义动画
    SublimeText教程
    JqGrid自定义的列
    js 除法 取整
    js日期字符串增加天数的函数
    Oracle中的rownum和rowid
    jQuery判断对象是否是函数
  • 原文地址:https://www.cnblogs.com/ZhangShengjie/p/13492035.html
Copyright © 2011-2022 走看看