宏定義
OC中的宏定義
#define RGBCOLOR(r,g,b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1]
swift中的宏定義
OC中宏定義的方式户敬,在swift中是不可用的,在swift中,宏定義其實就是定義一個全局常量或者全局函數(shù)
func RGB(_ r:CGFloat,_ g:CGFloat,_ b:CGFloat) -> UIColor {
return RGBA(r, g, b, 1.0)
}
func RGBA(_ r:CGFloat, _ g:CGFloat, _ b:CGFloat, _ a:CGFloat) -> UIColor {
return UIColor(red: (r)/255.0, green: (g)/255.0, blue: (b)/255.0, alpha: a)
}
let MainColor = RGB(255, 255, 255);
swift編寫framework
為了在OC編寫的項目中也能正常使用婉烟,有幾個點需要注意
- 公開的類: 權(quán)限在public及以上
- 公開類的公開函數(shù): @objc public
- 公開類的公開變量、常量: @objc public
- 枚舉:@objc public,并且需要繼承Int
@objc public enum ErrorType: Int {
case noError
}
- 全局常量棵譬、全局函數(shù):像上面說的swift中的全局常量、全局函數(shù)在OC中是沒辦法取值末购、調(diào)用的破喻,唯一的辦法就是另外創(chuàng)建一個類,通過這個類間接取值