在平常開發中經常會對設備進行必定的適配,爲了方便在多個項目裏統一管理和使用,因此封裝並開源了
SwiftyFitsize
這個庫,可用於適配視圖及字體大小,同時也支持 xib 和 storyboardgit
GitHub: SwiftyFitsizegithub
最終的效果以下圖所示swift
使用Cocoapods安裝,或手動拖入項目bash
pod 'SwiftyFitsize'
複製代碼
SwiftyFitsize
在默認情況下所使用的參照寬度爲iphone6
的375
若是設計圖所選用設備的寬度與默認值不一樣,能夠在AppDelegate
下初始化所參照的寬度微信
SwiftyFitsize.reference(width: 414)
複製代碼
下面列出一些設備對應的分辨率,方便查找iphone
設備 | 邏輯分辨率(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)~
複製代碼
支持控件 UILabel
UIButton
UITextView
UITextField
spa
注:~
請不要相互嵌套使用,如設計
CGPoint(x: 10~, y: 10~)~
複製代碼