当个人热点被激活并且 bar 将自身大小调整为 40 像素时,视图不会正确调整大小。底部在屏幕下方 20 像素处,而不是调整大小。
我在我的所有视图控制器中都使用了自动布局,但即使我的应用程序 UI 出现如下图所示的中断。
任何帮助都会很棒。!
在您的 viewdidload 中注册此通知
- (void)viewDidLoad {
[super viewDidLoad];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(statusBarFrameWillChange:)name:UIApplicationWillChangeStatusBarFrameNotification object:nil];
}
- (void)statusBarFrameWillChange:(NSNotification*)notification
{
NSLog(@"STATUS BAR UPDATED");
int statusHeight = [UIApplication sharedApplication].statusBarFrame.size.height;
NSLog(@"status bar height %d", statusHeight);
// Here you can do your constraint adjustments accordingly
}
你可以在这里找到一个很好的教程(快速)http://studyswift.blogspot.in/2015/12/adjust-ui-components-programmatically.html
你可以查看我之前的回答iOS App layout is wrong with calling status bar
从技术上讲,这里正在发生同样的事情,这会破坏您视图的自动布局。