1.Masonry 创建constraint来定义布局的方式:
1.1、 mas_makeConstraints :
你可以使用局部变量后者属性来保存以便下次应用它
1.2、 mas_updateConstraints: adding/updating
有时候你需哟啊更新constraint,而不是创建固定的constraint
1.3、 mas_remakeConstraints:
都是跟新constraint,不过,它是删除之前constraint,然后再添加新的
constraint;

2. Classy 是一个能与UIkit无缝结合stylesheet系统,借鉴与css思想,但引入新的语法和命名规则
2.1、 {}:
$main-color = #e1e1e1;
MyCustomView{
background-color:$main-color;
titile-insets:5,10,5,10;
>UIProgressView.tinted{
progress-tint-color:black;
track-tint-color:yellow;
}

}
^UIButton.warning, UIView.warning ^UIButton{
title-color[state:highlighted]:#e3e3e3;
}

2.2 默认样式:Classy在应用程序Bundle默认查找文件名为stylesheet.cas的样式文件。

3. Live Reload:Live Reload是实时显示编写UI代码效果的关键特性,他能够实时检查stylesheet
文件变化,无需重新编译、构建和运行模拟器,从而极大提高开发速度
3.1 Style Selecotors 是指定那个View使用那种样式的方式
3.1.1 Object Class
3.1.2 View Hierarchy
3.1.3 Style Class

3.2 Properties:Classy支持所有UIAppearance的属性和方法,也支持与UIAppearance无关的
很多属性。Classy使用与UIKit相同属性命名

4. Keep it DRY
4.1 Classy提供三种方式避免代码重复:grouping,nesting,variables

iOS布局的更多相关文章

  1. iOS - 布局重绘机制相关方法的研究

    iOS View布局重绘机制相关方法 布局 - (void)layoutSubviews - (void)layoutIfNeeded- (void)setNeedsLayout —————————— ...

  2. 几张图弄明白ios布局中的尺寸问题

    背景 先说说逆向那事.各种曲折..各种技术过时,老老实实在啃看雪的帖子..更新会有的. 回正题,这里讨论的是在Masnory框架下的布局问题.像我这种游击队没师傅带,什么都得自己琢磨,一直没闹明白下面 ...

  3. Xcode iOS布局autolayout和sizeclass的使用

    一.关于自动布局(Autolayout) 在Xcode中,自动布局看似是一个很复杂的系统,在真正使用它之前,我也是这么认为的,不过事实并非如此. 我们知道,一款iOS应用,其主要UI组件是由一个个相对 ...

  4. iOS 布局之 Springs and Struts

    “springs and struts” 模式,就是代码中的autosizing masks布局控制. autosizing mask决定了一个view会发生什么当它的superview 改变大小的时 ...

  5. ios 布局 素材 待整理

    https://www.cnblogs.com/fxwl/p/5961372.html div区域 8.盒子模型的相关属性 margin(外边距/边界) border(边框) padding(内边距/ ...

  6. [译] 揭秘 iOS 布局

    翻译自:Demystifying iOS Layout 在你刚开始开发 iOS 应用时,最难避免或者是调试的就是和布局相关的问题.通常这种问题发生的原因就是对于 view 何时真正更新的错误理解.想理 ...

  7. iOS: 布局可视化语法 Visual Format Syntax

    可视化语法 Visual Format Syntax The following are examples of constraints you can specify using the visua ...

  8. iOS - 布局NSLayoutConstraint动画的实现

    抛出问题:为何在用到用到constraint的动画时以下代码无法实现动画的功能 ,没有动画直接刷新UI跳到80 - (void)touchesBegan:(NSSet<UITouch *> ...

  9. iOS布局之Auto Layout

    学习资源: <iOS6核心编程>自动布局部分 <iOS6范例经典>自动布局部分 Tutorial: iOS 6 Auto Layout versus Springs and S ...

随机推荐

  1. [06] Java的数据类型

    1.基本数据类型 1.1 基本数据类型 byte.chart.short.int.long.float.double.boolean 共8种数据类型为基本数据类型: 数据类型     位数     取 ...

  2. CacheConcurrencyStrategy五种缓存方式

    CacheConcurrencyStrategy有五种缓存方式:  CacheConcurrencyStrategy.NONE,不适用,默认  CacheConcurrencyStrategy.REA ...

  3. 最近使用 .NET Core 遇到的一些坑

    最近.NET Core升级到2.0后开始慢慢捣鼓的多了起来,但遇到了不少坑,所以特来记录下. 第一个坑  条件编译符 我们在编写一些方法的时候通常会为Debug模式增加一些输出日志等以便我们检查,也会 ...

  4. Valgrind检测内存泄露简介

    原文地址: Valgrind 概述 体系结构 Valgrind是一套Linux下,开放源代码(GPL V2)的仿真调试工具的集合.Valgrind由内核(core)以及基于内核的其他调试工具组成.内核 ...

  5. es6箭头函数讲解

    es6箭头函数的用法 箭头函数是es6的一种函数的简写方法. 如下: var f = v = > v; //等同于 var f = function(v){ return v; } var su ...

  6. Linux系统管理命令(1)accton的使用

    安装: apt install acct accton accton命令是Linux系统进程管理命令之一,它的作用是打开进程统计,如果不带任何参数,即关闭进程统计.         具体用法为:acc ...

  7. Ubuntu Docker 版本的更新与安装

    突然发现自己的docker 版本特别的低,目前是1.9.1 属于古董级别的了,想更新一下最新版本,这样最新的一下命令就可以被支持.研究了半天都没有更新成功,更新后的版本始终都是1.9.1 :蒙圈了,找 ...

  8. 入门VMware Workstation下的Debian学习之Vim简单使用(三)

    什么是Vim? Vim具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计. Vim是从vi发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广 ...

  9. Lucene介绍与入门使用

    Lucene简介 Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,但它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整 ...

  10. zoj 1539 Lot 简单DP 记忆化

    Lot Time Limit: 2 Seconds      Memory Limit: 65536 KB Out of N soldiers, standing in one line, it is ...