Swift 优雅的适配大小

在日常开发中常常会对设备进行一定的适配,为了方便在多个项目里统一管理和使用,所以封装并开源了SwiftyFitsize这个库,可用于适配视图及字体大小,同时也支持 xib 和 storyboard

GitHub: SwiftyFitsize

最终的效果如下图所示

效果图

安装

使用Cocoapods安装,或手动拖入项目

pod 'SwiftyFitsize'

使用

SwiftyFitsize在默认状况下所使用的参照宽度为iphone6375
如果设计图所选用设备的宽度与默认值不同,可以在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

使用也是非常方便的,只需要在NumberUIFontCGPointCGSizeUIEdgeInsetsMake这些类型的值后面加上~即可

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)~
xib / storyboard 字体适配

支持控件 UILabel UIButton UITextView UITextField

font-fitsize
xib / storyboard 约束适配
constraint-fittsize

注:~请不要相互嵌套使用,如

CGPoint(x: 10~, y: 10~)~
欢迎关注微信公众号:linxunfengtop
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,148评论 1 32
  • 专业考题类型管理运行工作负责人一般作业考题内容选项A选项B选项C选项D选项E选项F正确答案 变电单选GYSZ本规程...
    小白兔去钓鱼阅读 9,059评论 0 13
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,019评论 3 119
  • 好像一直在等一个人 等那个人在我耳边轻唱 唱一首只为我的歌 听你的语音 感觉有一只手 撕裂胸腔 对准我的心脏 给我...
    percy0016阅读 209评论 0 0
  • http://www.xiaobao1993.com/1037.html
    狼之独步阅读 109评论 0 0