iOS自动布局之VFL

前言:因为项目在空白页面的使用中使用到了DZNEmptyDataSet这个库,但这个库默认的点击按钮的长度为全部宽度-padding,这个与产品整个风格不一致,需要修改为根据按钮文字宽度来自动展示按钮的宽度,但DZNEmptyDataSet使用的事VFL来布局,所以记录下VFL的使用

父控件:contentView,子控件:button

一、让子控件在水平方向居于父控件的中间

//水平居中
NSLayoutConstraint *layout = [NSLayoutConstraint constraintWithItem:self.button 
attribute:NSLayoutAttributeCenterX 
relatedBy:NSLayoutRelationEqual 
toItem:self.contentView 
attribute:NSLayoutAttributeCenterX 
multiplier:1 constant:0];
[self.contentView addConstraint:layout];

二、让子控件根据内容自动设置宽度,且限制最大最小宽度

 //设置宽度
UIButton *btn = xxx;
NSDictionary *views = @{@"button":btn};
 NSLayoutConstraint *layout = 
[NSLayoutConstraint constraintsWithVisualFormat: @"[button(>=100,<=200)]"  options:0  metrics:nil  views:views];

[self.contentView addConstraints: layout];

你可能感兴趣的:(iOS自动布局之VFL)