1.适用场景:
通常UI原型图是6s机型。做适配的时候可能在不同机型部分控件需要等比缩放。
2核心思路:
通过运行时给NSLayoutConstraint添加一个属性adapterScreen,控制是否等比缩放。用IBInspectable关键字把adapterScreen插入xib可视化界面。
- (void)setAdapterScreen:(BOOL)adapterScreen{
objc_setAssociatedObject(self, key, @(adapterScreen), OBJC_ASSOCIATION_RETAIN_NONATOMIC);
if (adapterScreen) {
self.constant = self.constant * kScale;
}
}
- (BOOL)adapterScreen{
return [objc_getAssociatedObject(self, key) boolValue];
}
demo地址:GitHub - pwb424273205/xib_Tool: xib的工具类目,可以在xib可视化的设置视图圆角,边框,约束等比自适应,按钮响应时间间隔等操作。
类似可以在xib设置圆角,边框等: