Objective c UIModalTransitionStyleFlipHorizontal不';行不通

Objective c UIModalTransitionStyleFlipHorizontal不';行不通,objective-c,ios,cocoa-touch,uiviewcontroller,uimodaltransitionstyle,Objective C,Ios,Cocoa Touch,Uiviewcontroller,Uimodaltransitionstyle,我尝试更改模态视图的modaltransationstyle属性。除了FlipHorizontal,其他所有样式都适用。如果我选择这个,什么也不会发生 我有一个UINavigationController,应该打开它 代码如下: UINavigationController *loginNavCon = [[UINavigationController alloc] init]; loginNavCon.navigationBar.barStyle

我尝试更改模态视图的
modaltransationstyle
属性。除了
FlipHorizontal
,其他所有样式都适用。如果我选择这个,什么也不会发生

我有一个
UINavigationController
,应该打开它

代码如下:

            UINavigationController *loginNavCon = [[UINavigationController alloc] init];
            loginNavCon.navigationBar.barStyle = UIBarStyleBlack;
            // push login view
            LogInViewController *liVC = [[LogInViewController alloc] initWithStyle:UITableViewStyleGrouped];
            [loginNavCon pushViewController:liVC animated:NO];
            [liVC release];
            // show login view
            loginNavCon.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
            [self.window.rootViewController presentModalViewController:loginNavCon animated:YES];
            [loginNavCon release];
谢谢你的帮助。

好的,我知道了

关键是要在推送
UIViewController
中设置它,而不是在推送的控制器中

因此,在我的示例代码中,它必须如下所示:

UINavigationController *loginNavCon = [[UINavigationController alloc] init];
loginNavCon.navigationBar.barStyle = UIBarStyleBlack;
// push login view
LogInViewController *liVC = [[LogInViewController alloc] initWithStyle:UITableViewStyleGrouped];
[loginNavCon pushViewController:liVC animated:NO];
[liVC release];
// show login view
/** changed **/
self.window.rootViewController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
/*************/
[self.window.rootViewController presentModalViewController:loginNavCon animated:YES];
[loginNavCon release];

事实上,对我来说,你最初的“问题”代码是有效的。在即将显示的新视图控制器上设置过渡样式。