黑魔法系列

  1. DispatchQueue.main.async
    有时候会遇到一些莫名其妙的问题,各种尝试均不能解决,此时可以考虑使用本法。比如在某些情况下(我的具体情况是当一个tableView:didSelectRowAt触发)present一个vc,这个vc在viewDidLoad与viewWillAppear之间有时候会存在一个很长的时间间隔1-2秒,多则5-6秒,甚是怪异。尝试各种变换vc的属性均不得姐,将于绝望之际,试用本法,果然有奇效,具体代码很简单:
DispatchQueue.main.async {
    self.present(vc, animated: false)
}

原因不明,但,就是有效。

  1. setNavigationBarHidden(true, animated: true)
    当从一个无导航条的vc切换到一个有导航条的vc时,不能简单使用isNavigationBarHidden,这会导致过渡场景导航条部分被凌乱。使用此方法则可以完美解决凌乱问题,注意animated一定要设置成true。

你可能感兴趣的:(黑魔法系列)