坑永远是踩不完的
真机调试NSLog无效
Xcode8发布之后,使用起来console莫名会输出些系统log, 导致看起来很不爽, 这时候我们会在product->editScheme->设置环境变量
OS_ACTIVITY_MODE
为disable
来禁止系统log, 但是这个时候如果你真机调试的话自己的NSLog也不会输出了
解决
自定义NSLog, 内部实际使用printf来进行log
#ifdef DEBUG
#define CJLog(FORMAT, ...) fprintf(stderr,"%s:%d\t%s\n",[[[NSString stringWithUTF8String:__FILE__] lastPathComponent] UTF8String], __LINE__, [[NSString stringWithFormat:FORMAT, ##__VA_ARGS__] UTF8String]);
#else
#define CJLog(...)
#endif
CAAnimationGroup 无效
最近需要做一个语音播放的功能,其中用到了语音播放
截取部分animation代码
CGFloat hiddenDuration = 0.01;
CGFloat interval = 0.4;
CABasicAnimation *opcityAnimation = [CABasicAnimation animationWithKeyPath:@"opacity"];
opcityAnimation.fromValue = @(1);
opcityAnimation.toValue = @(0);
opcityAnimation.duration = 0.01;
opcityAnimation.beginTime = CACurrentMediaTime();
opcityAnimation.removedOnCompletion = NO;
opcityAnimation.fillMode = kCAFillModeForwards;
CABasicAnimation *opcityAnimation1 = [CABasicAnimation animationWithKeyPath:@"opacity"];
opcityAnimation1.fromValue = @(0);
opcityAnimation1.toValue = @(1);
opcityAnimation1.duration = interval;
opcityAnimation1.beginTime =interval + hiddenDuration+ CACurrentMediaTime();
opcityAnimation1.removedOnCompletion = NO;
opcityAnimation1.fillMode = kCAFillModeForwards;
[_layers[1] addAnimation:opcityAnimation forKey:opcityAnimationKey];
[_layers[1] addAnimation:opcityAnimation1 forKey:opcityAnimationKey];
测试有效, 然后我打算放进group并进行循环, 结果死活不行
然后发现只需要把CACurrentMediaTime()
换成0
就好了
因为这时候统一是在group
的CACurrentMediaTime()
上计时, 设置为0
即可
Https & iOS App签名
看了几遍印象不是很深,先记录下来
iOS App签名介绍来之bang' blog
全文
Https介绍来之bestSwifter
全文
最后
推荐一个Apple官方的Xcode帮助大全地址
建议细心看下,帮助很大