iOS - Visual Format Language

关于autolayout。

1. 尽量用storyboard,添加约束方便直观。

2. 不能用storyboard添加到,考虑 Visual Format Language构建约束

- 直观,易读,代码少

3. 使用NSLayoutAttribute构建约束

- 易读,代码太TM多了

这里以几个例子说明介绍Visual Format Language

Visual Format Language是通过设置垂直(V)和水平(H)方向上,view与其它view的间距来实现view的定位。用以下代码添加约束,

+ (NSArray<NSLayoutConstraint *> *)constraintsWithVisualFormat:(NSString *)format options:(NSLayoutFormatOptions)opts metrics:(nullable NSDictionary<NSString *, NSNumber *> *)metrics views:(NSDictionary<NSString *, id> *)views;

1. @"V:|-10-[_headerL]-20-[_imageV(200)]-30-[_backBtn]-40-|"

在垂直方向上,_headerL与superview上边缘相距10,_headerL与_imageV间距20,_imageV高度200,_imageV与_backBtn相距30,_backBtn与superview下边缘相距40

2:@"[button1(==button2)]"

button1与button2宽度相等(没有V或者H,默认为H)

3: @"[button(>[email protected])]"

button宽度>=100,优先级为20

时间: 2024-12-30 04:27:25

iOS - Visual Format Language的相关文章

Autolayout + VFL(Visual Format Language)

最近在学习iOS的布局,在storyboard里,确定布局的思路: 1.确定能确定的: 2.无法确定的,看看是否可以想办法和其他控件关联起来,再根据关系来确定能确定的位置. 例子:实现如下图的布局 过程: 1.确定能确定的: 左上角的View,左边和上边距离父view的距离都是0(当然,这里假设了view的宽度和高度都是100) 设置完成后,点击Add 4 Constraints即可,现在界面如下所示; 左边View Controller Scene后面有个黄色图标,该图标的意思是警告的意思,是

使用Auto Layout中的VFL(Visual format language)--代码实现自动布局

使用Auto Layout中的VFL(Visual format language)--代码实现自动布局 2014-12-09 10:56 编辑: zhiwupei 分类:iOS开发 来源:机智的新手投稿 6 23450 Auto Layout自动布局VFL 招聘信息: 高级iOS开发工程师 高级PHP开发工程师 iOS高级研发工程师 iOS开发工程师 高级iOS手机应用软件开发工程师(培训讲师) 高级Cocos2d-x游戏开发工程师(培训讲师) iOS手机软件开发工程师 iOS工程师 Web后

自动布局和Visual Format Language 简要介绍

假设有一个按钮,你想把它放置在屏幕的中央.视图中心和按钮中心的相对位置可以简单地定义成如下: 按钮的center.x相当于视图中心的center.x 按钮的center.y相当于视图中心的center.y 苹果发现很多的UI组件的位置可以使用一个简单的方程等式得到解决: Object1.property1=(object2.property2*multiplier)+constant value 例如:使用这个方程式,我们可以很容易地将一个按钮放置到他的父视图中,如下所示: Button.cen

Visual Format Language(VFL)视图约束

约束(Constraint)在IOS编程中非常重要,这关乎到用户的直接体验问题. IOS中视图约束有几种方式,常见的是在IB中通过Pin的方式手动添加约束,菜单Editor->Pin->...但是我们往往需要更为灵活的操作,那么就要手动编写代码来实现这些操作. 1:长函数方法 Apple的工程师给我们提供了两种方式,第一种用长函数方法的形式 NSLayoutConstraint(item: <#AnyObject#>, attribute: <#NSLayoutAttribu

Autolayout 中的 Visual format language

一.什么时候用autolayout比较适合 1.不负责任的骑墙派说法:apple的设备越来越多了,你的应用应该都使用al.(并且用sb) 2.要看应用内容决定.如果你的内容是信息众多,同时需要展示的类别也很多,尺寸动态不定,甚至这些是在列表中的.(如社交应用).Al能给于很大的帮助. 3.Mac os的应用.现在都做iOS了.mac app的窗口,会有大小变化.al比较合适. 4.支持多向转屏的iPad应用.(有需要支持多方向iphone场景么?那么长,脑残了?) 5.其他业务不复杂,页面较少的

使用 Visual Format Language 定义水平和垂直约束

1.问题: 想要定义限制条件来改变一个 UI 组件在其父视图的水平和垂直方向布局的方法. 2.讨论: 使用 visual Format Language 在水平方向的限制条件使用的三个例子 : H:|-100-[_button]-100-| H:|-(<=100)-[_button(>=50)]-(<=100)-| H:|-[_button(>=100,<=200)] V:[_button]-(>=100)-| (注意:为了让程序看起来整齐一致并使设计者更容易做出决定,

Autolayout 中的Visual format language

一.什么时候用autolayout比较适合 1.不负责任的骑墙派说法:apple的设备越来越多了,你的应用应该都使用al.(并且用sb) 2.要看应用内容决定.如果你的内容是信息众多,同时需要展示的类别也很多,尺寸动态不定,甚至这些是在列表中的.(如社交应用).Al能给于很大的帮助. 3.Mac os的应用.现在都做iOS了.mac app的窗口,会有大小变化.al比较合适. 4.支持多向转屏的iPad应用.(有需要支持多方向iphone场景么?那么长,脑残了?) 5.其他业务不复杂,页面较少的

Visual Format Language

https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/AutolayoutPG/VisualFormatLanguage.html#//apple_ref/doc/uid/TP40010853-CH27-SW1 Visual Format Language This appendix shows how to use the Auto Layout Visual Format Lan

在UIScrollView中使用Auto Layout中的VFL(Visual format language)

上一篇VFL(Visual format language)的文章中讲了一些基本用法.传送门http://www.cnblogs.com/wupei/p/4150626.html. 这篇简单的讲解下UIScrollView下的自动布局.UIScrollView有一个contentSize所以,他跟其他的view不一样.其他的view你只需要指定他的四个边距,或者能固定他的大小就行.但是UIScrollView不行,约束写不好可能会导致滚动不了,或者报错或一堆警告.但是理解了他的原理就很容易去做到