Ios 如何为';动画:true';

Ios 如何为';动画:true';,ios,swift,animation,uinavigationbar,completionhandler,Ios,Swift,Animation,Uinavigationbar,Completionhandler,是否有方法为UINavigationController动画提供动画完成闭包 我有一句话,比如 navigationController?.setNavigationBarHidden(navigationController?.navigationBarHidden == false, animated: true) 我想检测它何时完成 有没有办法做到这一点 CATransaction.begin() CATransaction.setCompletionBlock { print("Fi

是否有方法为
UINavigationController
动画提供动画完成闭包

我有一句话,比如

navigationController?.setNavigationBarHidden(navigationController?.navigationBarHidden == false, animated: true) 
我想检测它何时完成

有没有办法做到这一点

CATransaction.begin()
CATransaction.setCompletionBlock { print("Finished") }
navigationController?.setNavigationBarHidden(!navigationController!.navigationBarHidden, animated: true)
CATransaction.commit()

您可以用
CATransaction

来包装它,非常感谢。顺便说一句,我认为navigationBarHidden Boolean的行为并不像预期的那样。这背后的诡计是什么?我应该观察什么。即使我使用了真或假,它也感觉自己在行动