閉包中解決循環(huán)引用的三種方式
方式一:
weak var weakself = self
tool.loadData { (jsonData) -> ( ) in
weakself?.view.backgroundColor = UIColor.redColor ( )
方式二:(推薦)
tools.loadData { [weak self] ( jsonData) -> ( ) in
self?.view.backgroundColor = UIColor.redColor ( )
方式三:
tools.loadData {[unown self] (jsonData) -> ( ) in
self.view.backgroundColor = UIColor.redColor
如果閉包作為方法的最后一個參數(shù),那么閉包可以把( )去掉
tableview的使用
創(chuàng)建log
獲取打印所在的文件
let file = (FILE as NSString) . lastPathComponent
獲取打印所在的方法
let funcName = FUNCTION
獲取打印所在行數(shù)
let lineNum = LINE
print("(file):(funcName))-123")
寫一個公共函數(shù):
func XMGLog<T>(message : T, file : String = FILE , funcName : String = Function, lineNum : Int = LINE) {
#If DEBUG
let fileName = (file as NSString) . lastPathComponent
print("(fileName) : ( \ (lineNum)) - \ (message)")
endif
}