最近研究 swift, 今天给大家介绍个小技巧
- 格式化日志输出, 更友好的提示输出内容的位置, 只需要定义一个全局函数即可
- Swift支持全局函数, 全局函数可以在当前所在的命名空间下随意调用, 以自定义的print函数为例(看下面代码)
- 定义全局函数类似定义全局变量, 可以在任意控制器下的大括号外定义即可
- 先看输出结果-->format:文件位置/方法/行号/自定义输出内容
[ViewController.swift][viewDidLoad()](18):看我看我看我看我
- 代码:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after
JJLog("看我看我看我看我")
}
}
// 这里 T 表示不指定 message参数类型
func JJLog<T>(message : T, file : String = __FILE__, funcName : String = __FUNCTION__, lineNum : Int = __LINE__) {
#if DEBUG
// 需要在 buildSetting 中配置 swift flags的参数为:-D DEBUG, DEBUG可以自定义, 一般用 DEBUG
// 搜 swift flags-->other swift flags-->DEBUG-->点+号-->输入上面的配置参数
// 1.对文件进行处理
let fileName = (file as NSString).lastPathComponent
// 2.打印内容
print("[\(fileName)][\(funcName)](\(lineNum)):\(message)")
#endif
}
网友评论