使用presentModalViewController的新视图位置问题

时间:2011-08-18 06:39:17

标签: iphone objective-c modalviewcontroller viewcontroller

我正在尝试使用presentModalViewController为我的应用添加新视图。

ASpotImageViewController *aSpotImage = [[ASpotImageViewController alloc] initWithNibName:@"ASpotImageView" bundle:nil spotID:spotid];
aSpotImage.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
//NSLog(@"frame is %@", aSpotImage.view.frame);
//NSLog(@"origin is %@", aSpotImage.view.frame.origin);
NSLog(@"description is %@", aSpotImage.description);
[aSpotImage setModalPresentationStyle:UIModalPresentationFullScreen];
[self presentModalViewController:aSpotImage animated:YES];

但是当我使用它时,新视图在屏幕上显示大约40个像素,并且底部被切断。可能是什么导致了这个?在我使用此代码的其他情况下,我没有这个问题。

2 个答案:

答案 0 :(得分:0)

Gurooj,你正在实施试试这个

UINavigationController *nextController = [[UINavigationController alloc] initWithRootViewController:aSpotImage];
[self presentModalViewController: nextController animated: YES];

白色空间通常是导航栏的高度,我猜?

答案 1 :(得分:0)

您当前的容器的框架为(320,440,0,40),因此当您在其上展示时,它似乎会被这么多数量抵消,尽管实际上它只是将它添加到位置(0,0)到父容器。修复方法是相应地重新调整当前视图或父视图的框架。