如果做过android的同学可以知道,android studio的console输出的log可以拥有不同的颜色样式,这样可以方便程序员进行选择性的观看、调试。但是这么炫的功能Xcode可以做到吗?答案是YES。
好,废话不多说,下面就开始介绍怎么操作
1.使用CocoaPods导入CocoaLumberjack
1.创建一个新的工程
2.这里可以通过命令行
创建文件的方式或者通过Xcode插件CocoaPods创建Podfile
3.打开Podfile
文件,并添加pod 'CocoaLumberjack'
4.执行install
命令安装CocoaLumberjack
库
5.安装完后,重启Xcode
2.为Xcode添加颜色插件
1.这里可以通过github
搜索XcodeColors
下载安装或者其他方式安装后,重启Xcode
2.在AppDelegate.m
文件中添加
[DDLog addLogger:[DDTTYLogger sharedInstance]]; // 标准lumberjack初始化
[[DDTTYLogger sharedInstance] setColorsEnabled:YES];// 启用颜色区分
3.依次执行Xcode->Product->Scheme->Edit Scheme
打开配置文件。在如下图片添加参数
3.创建一个pch全局配置文件
1.在Xcode->Build Setting ->prefix Header
配置添加pch文件
2.在pch文件中添加需要导入用的头文件
#import <DDLog.h>
#import <CocoaLumberjack.h>
#import "HJConstants.h" // 常量文件
#ifdef DEBUG
#define HJLogError(...) DDLogError(__VA_ARGS__); // 红色
#define HJLogWarn(...) DDLogWarn(__VA_ARGS__); // 橙色
#define HJLogInfo(...) DDLogInfo(__VA_ARGS__); // 默认是黑色
#define HJLogVerbose(...) DDLogVerbose(__VA_ARGS__); // 默认是黑色
#else
#define HJLogError(...)
#define HJLogWarn(...)
#define HJLogInfo(...)
#define HJLogVerbose(...)
#endif
4.创建一个常量文件用来保持常量
1.在.h
文件中添加
extern int ddLogLevel;
2.在.m
文件中添加
int ddLogLevel =
#ifdef DEBUG
LOG_LEVEL_VERBOSE;
#else
LOG_LEVEL_OFF;
#endif
3.描述一下LOG_LEVEL的不同等级所代表的做用
1.如果你将日志级别设置为 LOG_LEVEL_ERROR,那么你只会看到DDlogError语句。
2.如果你将日志级别设置为LOG_LEVEL_WARN,那么你只会看到DDLogError和DDLogWarn语句。
3.如果您将日志级别设置为 LOG_LEVEL_INFO,那么你会看到error、Warn和Info语句。
4.如果您将日志级别设置为LOG_LEVEL_VERBOSE,那么你会看到所有DDLog语句。
5.如果您将日志级别设置为 LOG_LEVEL_OFF,你将不会看到任何DDLog语句。
4.输出想要的结果
输出结果.png5.当然我们也可以自定义输出的颜色,只需要执行类似如下方法就可以实现
// Let's customize our colors.
// DDLogInfo : Pink
#if TARGET_OS_IPHONE
UIColor *pink = [UIColor colorWithRed:(255/255.0) green:(58/255.0) blue:(159/255.0) alpha:1.0];
#elseNSColor *pink = [NSColor colorWithCalibratedRed:(255/255.0) green:(58/255.0) blue:(159/255.0) alpha:1.0];
#endif
[[DDTTYLogger sharedInstance] setForegroundColor:pink backgroundColor:nil forFlag:DDLogFlagInfo];
DDLogInfo(@"Warming up printer"); // Prints in Pink !
最后添加github例子地址github
网友评论