我的应用程序具有调用功能。拨打电话时,它会转到默认电话应用程序。现在在通话期间,我正在访问我的应用程序,当时我的应用程序在导航栏上显示绿色栏。如果我转到下一个详细信息屏幕,所有 UI 都会受到干扰。
问问题
388 次
1 回答
2
您可以在这里选择三个选项来修复您的 VC UI:
Firs: 您可以在代码或 strotyboard 中设置自动调整大小的掩码。
二:使用didChangeStatusBarFrame:
- (void)application:(UIApplication *)application didChangeStatusBarFrame:(CGRect)newStatusBarFrame {
if ([UIApplication sharedApplication].statusBarFrame.size.height == 40) {
// Do adjustment
}
else if ([UIApplication sharedApplication].statusBarFrame.size.height == 20 && oldStatusBarHeight == 40){ // you should keep oldStatusBarHeight
// Do adjustment
}
else {
return;
}
}
第三:在您的注册更改 StatusBarFrame 通知viewDidLoad
:
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(statusBarFrameChanged:) name:UIApplicationDidChangeStatusBarFrameNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(statusBarFrameWillChange:) name:UIApplicationWillChangeStatusBarFrameNotification object:nil];
statusBarFrameWillChange
并在和中调整您的 VC 大小statusBarFrameChanged
。
于 2013-08-01T11:16:01.223 回答