由于从Xcode 8.3更新到9,我看到了这种怪异的行为,在推送过渡期间,目标控制器的导航栏首先要加载一半,然后以正确的高度安装。发生在不同导航控制器的所有屏幕上。尝试启用/禁用NAV栏半透明和安全区域布局指南,但没有帮助。仅在iOS 11上发生。
显示此行为的屏幕截图。
事实证明,我正在使用旧版本的kmnavigationbartransition库,该库使用方法swizzling在推送过渡过程中管理导航栏样式。该库的更新解决了问题。