我有带有 2 个选项卡的 UITabBarController。当状态栏大小发生变化时(模拟器“切换通话状态栏”菜单项),调整大小就可以了。另一个没有。
有问题的选项卡项包含一个静态视图,该视图会根据某些内容动态加载一个或另一个视图。在使此设置正常工作时,我发现主选项卡视图不会自动将例如 viewWillAppear 和 viewWillDisappear 消息发送到我的动态子视图。
Apple 文档解释说这是因为系统无法识别动态添加的视图。
@interface MyTabViewController : UIViewController
{
UIView *mainView;
FirstViewController *aController;
SecondViewController *bController;
}
...
if (index == 0)
{
self.aController = [[FirstViewController alloc]
initWithNibName:@"FirstViewController" bundle:nil];
[self.mainView addSubview:aController.view];
[self.aController viewWillAppear:YES];
}
如何将StatusBar 大小更改事件添加到我的动态子视图中?如其他地方所述,“didChangeStatusBarFrame”不起作用。