iOS_经验(8)_布局_Visual Format Language

一丶介绍

VFL是可视化格式语言,用来实现自动布局的;

二丶使用

格式:

方向 : [视图] -距离-[视图(大小)]-距离-[视图]

符号参考图:

Paste_Image.png

1.例子:

实现一个redView距离父视图,上100,左30,宽50,高100;

翻译成VFL应该这么理解:
redView
水平方向上:距离父视图左边30,宽度50;
垂直方向上:距离父视图上边100,高度100;

代码:

_redView = [[UIView alloc] init];
_redView.translatesAutoresizingMaskIntoConstraints = NO;
_redView.backgroundColor = [UIColor redColor];
[self.view addSubview:_redView];

[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-30-[_redView(==50)]" options:0 metrics:nil views:NSDictionaryOfVariableBindings(_redView)]];

[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-100-[_redView(==100)]" options:0 metrics:nil views:NSDictionaryOfVariableBindings(_redView)]];

效果:

Paste_Image.png

三丶重点

有了Masonry这种库,VFL语言很久没用过了;本来没提的必要;但是今天看到
https://autolayoutconstraints.com/
这个网站...

Paste_Image.png

代码虽然长了点,但是基本实现了;而且还支持swift

Paste_Image.png

四丶总结

以前些项目的时候有遇到同时布局iPhone,iPad横竖适配的情况,masonry这种第三方是用不上的,又不想写系统非常长的自动布局代码;选择用VFL;代码还是很简洁易懂的;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容