잘 작동하는 UITabBar 기반 응용 프로그램이 있습니다. 특정 상황에서 대신 다른 UIViewController 보여 오전. 이제 어떤 버그가 생겼 는가? 테스트 펜촉 (!) 만 제대로 표시되도록 프레임을 조정해야한다는 것입니다. 그렇지 않으면보기가 상태 표시 줄 아래에 있습니다.UIWindow의 오프셋 addSubview
- (void)applicationDidFinishLaunching:(UIApplication *)application
{
if (condition) {
UIViewController *vc = [[UIViewController alloc] initWithNibName:@"Test" bundle:nil];
// FIXME this should NOT be required
CGRect r = vc.view.frame;
r.origin.y += 20;
vc.view.frame = r;
[window addSubview:vc.view];
[window makeKeyAndVisible];
return;
}
[window addSubview:tabViewController.view];
[window makeKeyAndVisible];
}
아마도 Test nib에 문제가 있습니까? 될 수 없다. 테스트 펜촉은 깨끗한 새 프로젝트에서 원하는대로 작동합니다. 새로운 깨끗한 펜촉도 같은 증상을 보입니다. 그래서 MainWindow 펜촉으로 뭔가 이상해야합니다. 맞습니까? 그러나 UITabBarController 잘 표시됩니다.
나는 조금 혼란스럽고 여기에 아이디어가 부족합니다. 이 문제를 어떻게 추적 할 것인가?
만약 내가 할 수있는 두번 upvote 줄 : –
iOS 개발에서 가장 성가신 일반적인 이상한 중 하나에 대한 명확한 대답. 5 별, 10/10, 다시 재생할 것입니다 –
전체 답변을 읽을 수는 없지만 [[UIScreen mainScreen] applicationFrame] –