UIView的自动布局约束,NSAutoLayout自动布局代码的封装,XIB自动布局适配
UIView+ZLConstraint.h :
/** 比例值 Aspect Ratio */
#define ZLScaleValue(scaleValue) scaleValue/320.0*[UIScreen mainScreen].bounds.size.width
/**
* UIView的自动布局约束,NSAutoLayout自动布局代码的封装,XIB自动布局适配
* 在以下代码中添加 [view.superview layoutIfNeeded]; 实现动画.
* [UIView animateWithDuration:0.1 animations:^{
* code...
* [view.superview layoutIfNeeded];
* }];
*/
@interface UIView (ZLConstraint)
#pragma mark - REMOVE
/**
删除约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param viewLayoutAttribute 当前视图添加的约束属性
@param toView 关联的视图
@param toViewLayoutAttribute 关联视图的约束属性
@return instancetype 当前视图对象
*/
- (instancetype)removeConstraintWithSuperview:(UIView *)superview view:(UIView *)view viewLayoutAttribute:(NSLayoutAttribute)viewLayoutAttribute toView:(nullable UIView *)toView toViewLayoutAttribute:(NSLayoutAttribute)toViewLayoutAttribute;
#pragma mark - REMOVE SELF TO
/**
删除上对上约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeTopEqualTopConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
/**
删除上对下约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeTopEqualBottomConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
/**
删除下对下约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeBottomEqualBottomConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
/**
删除下对上约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeBottomEqualTopConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
/**
删除左对左约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeLeadingEqualLeadingConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
/**
删除左对右约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeLeadingEqualTrailingConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
/**
删除右对右约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeTrailingEqualTrailingConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
/**
删除右对左约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeTrailingEqualLeadingConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
/**
删除宽度对宽度约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeWidthEqualWidthConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
/**
删除高度对高度约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeHeightEqualHeightConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
/**
删除水平居中对水平居中约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeCenterXEqualCenterXConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
/**
删除垂直居中对垂直居中约束属性
@param superview 父视图
@param view 当前添加约束的视图
@param toView 关联的视图
@return instancetype 当前视图对象
*/
- (instancetype)removeCenterYEqualCenterYConstraintWithSuperview:(UIView *)superview view:(UIView *)view toView:(UIView *)toView;
#pragma mark - REMOVE SELF
/**
删除上对上约束属性
@param superview 父视图
@param toView 关联的视图
@return in