前言
最近真的是...忙透了,在解决问题的时候除了这样几个问题
1. 项目tabbar iOS12.0 进出页面 push pop的时候 会滞后出现...会闪动吧
2. 一个ViewController 会过度释放
解决问题
1. 从广大网友那里得出 将tabbar的translucent 设置为NO 即可解决闪动问题. 但是这样的操作会导致另外一个问题
我们的结构是 一个UITabBarController 里边有5个子Controller 然后 其中一个Controller 里边有两个ChildController 我们的高度不是直接自适应出来的是直接用屏幕高度减去 导航栏以及tabbar的高度作为高, 这5个Controller 的显示确实没有出现问题,但是其中那个Controller的两个子Controller的高度都比设置的要少49 一个Tabbar的高度.所以推测是translucent 导致的问题...
然后从网上找到这样一个参数extendedLayoutIncludesOpaqueBars 这个我的理解是是否扩展绘制到你不透明的bars 的部分 当我们将translucent 设置为NO 的时候这个参数为NO 或者你防止一个不透明的image 的时候该属性也会设置为NO ,导致页面不会延展到你的tabbar 下边去,所以导致了我子页面的页面高度少了49.(发现的过程是在view.frame 在viewWillAppear里高度减少了49 之前一直都是 正常的frame).所以我将页面的extendedLayoutIncludesOpaqueBars = YES, 就解决了这个问题
但是