UITabBarController を含む UINavigationController のルート ビューがあります。タブ バー コントローラーには 2 つの単純なビューがあります。iOS 6 シミュレーターまたはデバイスで最初に起動すると、最初のビューの上にギャップが表示されます。2 番目のタブに切り替えて戻ると、ギャップが消えます。これは iOS 6 以降に発生し始めました。iOS 5 は問題なく動作します。何が変わったのですか?
スクリーンショット:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
UITabBarController *tabBarController = [[UITabBarController alloc] init];
UIView *dummyView1 = [[UIView alloc] init];
[dummyView1 setBackgroundColor:[UIColor redColor]];
UIViewController *dummyViewController1 = [[UIViewController alloc] init];
[dummyViewController1 setView:dummyView1];
UIView *dummyView2 = [[UIView alloc] init];
[dummyView2 setBackgroundColor:[UIColor blueColor]];
UIViewController *dummyViewController2 = [[UIViewController alloc] init];
[dummyViewController2 setView:dummyView2];
NSArray *viewControllers = [NSArray arrayWithObjects:dummyViewController1, dummyViewController2, nil];
[tabBarController setViewControllers:viewControllers];
UINavigationController *rootNavController = [[UINavigationController alloc] initWithRootViewController:tabBarController];
[[self window] setRootViewController:rootNavController];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
return YES;
}