我刚刚注意到,在使用 Xcode 16 (iOS 18) 构建我的应用程序时,切换选项卡时屏幕会短暂闪烁(使用标准
UITabBarController
)。你们有人经历过吗?我搜索了文档,但找不到任何提及行为变化的内容。我还尝试实现以下方法UITabBarControllerDelegate
:
func tabBarController(_ tabBarController: UITabBarController, animationControllerForTransitionFrom fromVC: UIViewController, to toVC: UIViewController) -> (any UIViewControllerAnimatedTransitioning)? {
nil
}
func tabBarController(_ tabBarController: UITabBarController, interactionControllerFor animationController: any UIViewControllerAnimatedTransitioning) -> (any UIViewControllerInteractiveTransitioning)? {
nil
}
如何消除闪烁?
通过在
UIView.setAnimationsEnabled(false)
中设置
func tabBarController(_ tabBarController: UITabBarController, shouldSelect viewController: UIViewController) -> Bool
暂时解决了
然后在 func
UIView.setAnimationsEnabled(true)
中设置
tabBarController(_ tabBarController: UITabBarController, didSelect viewController: UIViewController)