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];
事实上,对我来说,你最初的“问题”代码是有效的。在即将显示的新视图控制器上设置过渡样式。