在横向模式下切换视图时Xcode通用应用程序问题

时间:2011-06-11 00:08:02

标签: ios xcode view universal switching

我正在将iPhone应用更新为通用版。 我有不同的视图控制器与XIB文件,在纵向模式下在这些视图之间导航时,一切都运行良好,当实际视图切换到横向时,视图调整大小完美。

但是当设备保持在横向并导航到其他视图(xib)时,新视图打开显示,如在纵向模式下,没有调整大小,视图离开屏幕,在右边部分,我可以看到最后一个视图的一部分。我想我没有使用正确的方法来调用新的视图控制器,看起来像是创建了一个新的第一层。

那么,当设备处于横向和纵向时,是否可以通过自动调整大小来正确切换视图?

有关我的项目的更多信息:

在我的代表中:

UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:[[IntroViewController alloc] initWithNibName:@"IntroViewController" bundle:nil]];
[navController setNavigationBarHidden:YES];
[window addSubview:navController.view];
[window makeKeyAndVisible];

调用视图的方法:

-(IBAction)actioncontact:(id)sender{
    Contactpage *listing = [[Contactpage alloc] initWithNibName:@"Contactpage" bundle:nil];
    self.contpage = listing;
    [listing release];
    [self.view addSubview:contpage.view];
    CATransition *animation = [CATransition animation];
    [animation setType:kCATransitionFade];
    [animation setSubtype:kCATransitionFromRight];
    [animation setDuration:0.25];
    [[self.view layer] addAnimation:animation forKey:@"transitionViewAnimation"];
}

提前感谢您的回答。

1 个答案:

答案 0 :(得分:1)

我发现我的问题方法是错误的,我使用了现在的Modal并且它有效:

-(IBAction)actioncontact:(id)sender{

Contactpage *listing = [[Contactpage alloc] initWithNibName:nil bundle:nil];
listing.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:listing animated:YES];
[listing release];

}