R.swift是什么?
R.swift
是一款基于swift
开发的仿Android
资源引用的框架,它的原理类似于Android
的R机制
,相当于是哈希表的资源映射(有向Android同事了解过R机制
,不知道表述是否有误)。R.Swift
有着动态生成代码的机制,支持IDE
的代码自动补全。
R.swift的配置
1. cocoapods
里有beta版也有alpha版,可以选择稳定版本,创建podfile
文件后pod install
。
pod search R.swift
2.添加Run Script
文件
配置
3.挪动Run Script
文件位置,在Mainfest.lock
和Compile Sources
之间。
配置
4. Command + B,在工程目录里Show in Finder
,会发现多了一个R.generated.swift
配置
5.将R.generated.swift
拖到项目中,不要勾选Destination
配置
R.swift的使用
每一次项目中资源文件有变动的时候,都要执行一下Command+B,保证R.generated.swift
实时更新。包括.storyboard、.xib、图片等等。
1.关于image,拖入项目后编译通过会发现R.generated.swift
自动生成了关于该图片的代码
添加图片
// R.swift之前
let img1 = UIImage(named: "success")
// R.swift之后
let img2 = R.image.success()
同理,其他资源文件使用方法也是如此,更多可查看官网。
2.关于color,在颜色面板中按下述步骤自定义color,前往~/Library/colors
复制.clr
文件,导入工程中后编译一下。
添加color
添加color
不知为何,我这边拖入.clr
文件后,R.color
并不会识别,但是能识别R.clr
,不过不影响使用。如果哪位亲有解决办法,麻烦告知一下,感激不尽。
// R.swift之前
self.view.backgroundColor = UIColor(red: 255/255.0, green: 95/255.0, blue: 90/255.0, alpha: 1)
// R.swift之后
self.view.backgroundColor = R.clr.test.red()
总之,R.swift是一个很强大的库,推荐使用噢😁
网友评论