博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Visual Format Language 可视化格式语言
阅读量:4087 次
发布时间:2019-05-25

本文共 1773 字,大约阅读时间需要 5 分钟。

Visual Format Language 可视化格式语言

是苹果公司为了简化Autolayout的编码而推出的抽象语言

VFL 语法

H: 水平方向V: 垂直方向| 边界[ 视图名称 ]( 常数值 )== >= <= 关系- 距离

VFL 示例

H:|-0-[button]-0-|    按钮 距离 左右 两边为 0V:|-0-[button]-0-|    按钮 距离 上下 两边为 0H:|-20-[button(50)]    按钮 距离 左 边 20    按钮宽度 50V:[button(40)]-20-|    按钮 距离 底 边 20    按钮高度 40

没有提供居中对齐的方式,也不支持运算符

示例代码

//  ViewController.m#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];    UITextField *text1 = [[UITextField alloc] init];#warning mark - 用代码创建文本输入框时一定要注意给它设置边框样式    text1.borderStyle = UITextBorderStyleRoundedRect;//        text1.frame = CGRectMake(100, 100, 100, 30);    [self.view addSubview:text1];    UITextField *text2 = [[UITextField alloc] init];#warning mark - 用代码创建文本输入框时一定要注意给它设置边框样式    text2.borderStyle = UITextBorderStyleRoundedRect;//    text2.frame = CGRectMake(100, 200, 100, 30);    [self.view addSubview:text2];    text1.translatesAutoresizingMaskIntoConstraints = NO;    text2.translatesAutoresizingMaskIntoConstraints = NO;    NSDictionary *views = @{@"text1" : text1, @"text2" : text2};    NSDictionary *metrics = @{@"leftMargin" : @20};    // 创建第一个文本框的水平方向约束   NSArray *text1H = [NSLayoutConstraint constraintsWithVisualFormat:@"H:|-leftMargin-[text1]-leftMargin-|" options:0 metrics:metrics views:views];    [self.view addConstraints:text1H];    // 创建第二个文本框的水平方向约束    NSArray *text2H = [NSLayoutConstraint constraintsWithVisualFormat:@"H:|-20-[text2]-20-|" options:0 metrics:nil views:views];    [self.view addConstraints:text2H];    // 创建垂直方向的约束   NSArray *text1AndText2V = [NSLayoutConstraint constraintsWithVisualFormat:@"V:|-20-[text1(50)]-20-[text2(==text1)]" options:0 metrics:nil views:views];    [self.view addConstraints:text1AndText2V];}@end

转载地址:http://jykii.baihongyu.com/

你可能感兴趣的文章
数据结构与算法14-跳表
查看>>
Java并发编程 | 一不小心就死锁了,怎么办?
查看>>
计算机组成原理 | 冯·诺依曼体系结构:计算机组成的金字塔 | 极客时间
查看>>
嵌入式系统 - 同步、互斥与通信(下)
查看>>
优先级位图算法
查看>>
离群点(孤立点)检测
查看>>
Python - 用 turtle 绘制圆形
查看>>
Mayavi 入门
查看>>
Python - 简单的数据类型
查看>>
MATLAB 基础知识
查看>>
机器学习基石 - The Learning Problem
查看>>
机器学习基石 - Types of Learning
查看>>
deeplearning.ai - 深度卷积网络:实例探究
查看>>
Deeplearning.ai - 浅层神经网络
查看>>
deeplearning.ai - 深层神经网络(Deep Neural Networks)
查看>>
机器学习基石 - Training versus Testing
查看>>
机器学习基石 - Theory of Generalization
查看>>
Python基本图形绘制
查看>>
Python基本数据类型
查看>>
Python - time库
查看>>