Ios 移动的UINavigationBar在应用程序从后台激活后在错误位置重新绘制

Ios 移动的UINavigationBar在应用程序从后台激活后在错误位置重新绘制,ios,uinavigationbar,Ios,Uinavigationbar,我有一个UINavigationBar,当下面的滚动视图向上滚动时,它会向上移动,包括屏幕外。当按下Home(主页)按钮后,应用程序变为非活动状态,然后恢复,显示会恢复到之前的状态,但导航栏会在状态栏下方的默认位置重新绘制。当我点击屏幕并滚动一个最小的量时,它会跳转到通常应该在屏幕外的位置 除了全面的应用程序恢复之外,还有什么可以纠正的吗 UINavigationBar通过设置其帧进行移动。在应用程序激活后,我确保框架被重新设置为正确的大小,但它仍然在“标准”位置绘制 不用说,我已经尝试过多种方

我有一个UINavigationBar,当下面的滚动视图向上滚动时,它会向上移动,包括屏幕外。当按下Home(主页)按钮后,应用程序变为非活动状态,然后恢复,显示会恢复到之前的状态,但导航栏会在状态栏下方的默认位置重新绘制。当我点击屏幕并滚动一个最小的量时,它会跳转到通常应该在屏幕外的位置

除了全面的应用程序恢复之外,还有什么可以纠正的吗

UINavigationBar通过设置其帧进行移动。在应用程序激活后,我确保框架被重新设置为正确的大小,但它仍然在“标准”位置绘制

不用说,我已经尝试过多种方法&强制重画,但都没有效果。隐藏然后再次显示,调用setNeedsDisplay等


这在iOS 7上

作为一个有效的解决方案,我现在设置了一个通知,当应用程序再次激活时。这会触发将滚动视图的内容偏移设置为初始值,以便导航栏处于正确位置。在视图中丢失准确的滚动点并不像显示混乱那么严重。这并不理想,但可以接受。