//基于4s兼容值转化,根据屏幕高来拿比例,(当前高 * value)/480.
#define COMPATIBLEVALUE(value) ([UIScreen mainScreen].bounds.size.height * value)/480.
//基于4s兼容值转化,根据屏幕宽来拿比例,(当前宽 * value)/320.
#define COMPATIBLE_W_VALUE(value) ([UIScreen mainScreen].bounds.size.width * value)/320.
-(void)viewDidLayoutSubviews{
if (!_isFirst) {
_isFirst = YES;
for (NSLayoutConstraint * constaint in _scrollView.constraints) {
if (constaint.firstAttribute == NSLayoutAttributeLeading) {
constaint.constant = COMPATIBLE_W_VALUE(constaint.constant);
}else if(constaint.firstAttribute == NSLayoutAttributeTop){
constaint.constant = COMPATIBLEVALUE(constaint.constant);
}
}
for (UIView * view in _scrollView.subviews) {
NSArray * constaints = view.constraints;
for (NSLayoutConstraint * constaint in constaints) {
if (constaint.firstAttribute==NSLayoutAttributeHeight) {
constaint.constant = COMPATIBLEVALUE(constaint.constant);
}
}
}
for (UIView * v in self.scrollView.subviews) {
if ([v isKindOfClass:[UILabel class]]) {
UILabel * lb = (UILabel *)v;
lb.font = [UIFont systemFontOfSize:COMPATIBLEVALUE(lb.font.pointSize)];
}else if ([v isKindOfClass:[UITextField class]]){
UITextField * tf = (UITextField *)v;
tf.font = [UIFont systemFontOfSize:COMPATIBLEVALUE(tf.font.pointSize)];
}else if ([v isKindOfClass:[UIButton class]]){
UIButton * btn = (UIButton *)v;
btn.titleLabel.font = [UIFont systemFontOfSize:COMPATIBLEVALUE(btn.titleLabel.font.pointSize)];
}
}
}
[super viewDidLayoutSubviews];
}
1、先加约束,特点,左加固定,上加固定,高度固定,部分要求居中,部分要求边缘对齐偏移