1

我有 6 个视图,其中我将 UISplitViewController 放置在第 4 个位置(即第 4 个视图)。现在,当我从第三视图导航到第四视图(即 ViewController 到 SplitView)时,我想回到第四视图到第三视图(即 SplitView 到 ViewController)。

当我从第三个视图导航到第四个视图时,我使用下面的代码来显示 UISplitViewController。

MasterViewController *masterViewController = [[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil];
            UINavigationController *masterNavigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];

            DetailViewController *detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];
            UINavigationController *detailNavigationController = [[UINavigationController alloc] initWithRootViewController:detailViewController];

            masterViewController.detailViewController = detailViewController;
            self.splitViewController = [[UISplitViewController alloc] init];
            self.splitViewController.delegate = detailViewController;
            self.splitViewController.viewControllers = [NSArray arrayWithObjects:masterNavigationController, detailNavigationController, nil];
            AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication]delegate];
            appDelegate.window.rootViewController = self.splitViewController;

现在,我以编程方式在导航栏中创建了一个工具栏并放置了一个后退按钮。下面是我试图将视图弹出回视图控制器的代码。(即从SplitView 到ViewController)。

-(IBAction)backbtn:(UIBarButtonItem *)sender
{
//    RepresentativeAccount<UISplitViewControllerDelegate> *represent = [[RepresentativeAccount alloc]initWithNibName:@"RepresentativeAccount" bundle:nil];
//    //[self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:2] animated:YES];
//    [[self.splitViewController.viewControllers objectAtIndex:0]popToViewController:represent animated:YES];
}

请帮忙谢谢。

4

1 回答 1

0

参考:查看 iOS 的控制器目录

拆分视图控制器必须始终是您创建的任何界面的根。

换句话说,您必须始终将来自UISplitViewController对象的视图安装为应用程序窗口的根视图。

然后,拆分视图界面的窗格可能包含导航控制器、选项卡栏控制器或您需要实现界面的任何其他类型的视图控制器。

拆分视图控制器不能以模态方式呈现。

因此,您的尝试是不正确的,实际上您的应用程序可能会被 Apple 拒绝。

于 2012-04-25T13:20:17.250 回答