在日常开发中常常会对设施进行肯定的适配,为了方便在多个项目里统一管理和使用,所以封装并开源了
SwiftyFitsize
这个库,可用于适配视图及字体大小
GitHub: SwiftyFitsize
最终的效果如下图所示
使用Cocoapods安装,或者手动拖入项目
pod 'SwiftyFitsize'
SwiftyFitsize
在默认状况下所使用的参照宽度为iphone6
的375
假如设计图所选用设施的宽度与默认值不同,可以在AppDelegate
下初始化所参照的宽度
SwiftyFitsize.reference(width: 414)
下面列出少量设施对应的分辨率,方便查找
设施 | 逻辑分辨率(point) | 设施分辨率(pixel) |
---|---|---|
SE | 320x568 | 640x1136 |
6(S)/7/8 | 375x667 | 750x1334 |
6(S)+/7+/8+ | 414x736 | 1080x1920 |
X(S) | 375x812 | 1125x2436 |
XR | 414x896 | 828x1792 |
XS Max | 414x896 | 1242x2688 |
使用也是非常方便的,只要要在Number
、UIFont
、CGPoint
、CGSize
、UIEdgeInsetsMake
这些类型的值后面加上~
就可
100~UIFont.systemFont(ofSize: 14)~CGPoint(x: 10, y: 10)~CGSize(width: 100, height: 100)~CGRect(x: 10, y: 10, width: 100, height: 100)~UIEdgeInsetsMake(10, 10, 10, 10)~
注:~
请不要相互嵌套使用,如
CGPoint(x: 10~, y: 10~)~