在ios6中没有调用新的方向方法

时间:2012-09-21 07:57:20

标签: objective-c

最新版本的xcode 4.5

未调用方向方法
(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

    // Override point for customization after application launch.    

    self.sampleController =[[SampleViewController alloc]init];

    UINavigationController * nvC =[[UINavigationController alloc]initWithRootViewController:self.sampleController];

    self.window.rootViewController =nvC;

    [self.window makeKeyAndVisible];

    return YES;

}

(BOOL)shouldAutorotate{
    return YES;
}
(NSUInteger)supportedInterfaceOrientations{
       return UIInterfaceOrientationMaskAll;
}

当我把UIViewController对象作为windows rootviewcontroller时,它被正确调用。但是,当我把UINavigationController对象作为windows rootviewcontroller时,它没有被调用。

请有人帮我解决这个问题。

1 个答案:

答案 0 :(得分:0)

您可以将新控制器作为UINavigationController的子视图,并在其中实现回调方法。然后使用控制器作为窗口的rootviewcontroller。 或者,如果您不喜欢创建新类,也可以使用category来实现这些方法。