iOSApp | 兼容iOS7系统的问题

http://www.jianshu.com/p/b49a87093ac4 ([iOS][兼容性]iOS7 pushViewController,popViewControllerAnimated存在的问题)
在我遇到问题后, 参过以上这篇文章, 为了表示感谢, 特地贴过来, 但是遇到的问题并不太一样.


昨天晚上, 北京QA同事说有问题, 需要4s, iOS7系统才能复现, 那个时候已经晚上十点多了, 在群里问, 武汉的QA有个4s,过去拿过来, 居然还是关机的, 可能也是好久没有用过了吧, 充电,开机, 8分钟过去了, 这个期间, 猜测了集中可能, 网上搜了一下, 看到好多iOS7的文章, 上面的文章给了我一些思路.

bug复现:

从A控制器push进入B, 再从B控制器push进入C, 但是用户看到的是直接从A到C, 这就需要两次push都需要把animation设置为NO, 代码大概是这个样的, 在iOS8以上的系统就没有问题, 但是在iOS7的手机上, 从A只能push进入B, 无法进入C, 而且, 虽然显示的是B控制器的view,但是交互失效.

核心问题

iOS7系统, 如果animation设置为NO, 连续push的话, 系统反应不过来, 这是iOS7系统的问题, iOS8之后苹果公司就修复了, 详情可以参考(http://www.jianshu.com/p/b49a87093ac4).

如何解决

B控制器中, 在跳转到C控制器的代码哪里, 判断iOS系统的版本, CGFloat version = [[[UIDevice currentDevice] systemVersion] floatValue];, 如果verson < 8.0f, 就写一个dispatch_after, 延迟0.2s就够了.

你可能感兴趣的:(iOSApp | 兼容iOS7系统的问题)