您的位置:首页 > 其它

实践出真知系列

2015-06-05 15:59 309 查看
有时一个问题去搜索答案,答案五花八门,也许有的都能解决问题,但更多时间有的答案是已经失效了的.特总结这个文章,持续更新,也是给自己做一个记录.

1.导航栏透明;(xcode 6.3 + iOS 8.3)

现在越来越多的应用导航栏都是透明的,我也想尝试,遇到了不同的答案,我认为比较好的解决方案;

一般是写在viewDidLoad中,实际使用参考实际情况;
[self.navigationController.navigationBar
setBackgroundImage:[[UIImage
alloc] init]
forBarMetrics:UIBarMetricsDefault];
[self.navigationController.navigationBar
setShadowImage:[[UIImage
alloc]init]];
有文章提出的解决方案为随便一张图片 但是 BarMetrics 要设置为 UIBarMetricsCompact

[self.navigationController.navigationBar
setBackgroundImage:[UIImage
imageNamed:@"我就是那张滥竽充数的图片"]
forBarMetrics:UIBarMetricsCompact];
但是这样导航栏底部的那条线无法抹去
其实既然那张照片不重要,那么用[[UIImage alloc] init]
初始化的空图其实是更好的选择了.

2.NSLog信息打印所在类和行(xcode 6.3 + iOS 8.3)

//#if 1  //1显示 NSLog
的具体位置 0不显示
//#define NSLog(FORMAT, ...) fprintf(stderr,"[%s:%d行] %s\n",[[[NSString stringWithUTF8String:__FILE__]lastPathComponent] UTF8String], __LINE__, [[NSString stringWithFormat:FORMAT,##__VA_ARGS__]
UTF8String]);
//#else
//#defineNSLog(FORMAT, ...) nil
//#endif
这样 在app要发布时 改为0,直接不打印log信息了 很方便.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: