1

我有UISplitViewamasterView和 a detailViewmasterView是 a UITableViewController(在 a 内)UINavigationControler和 thedetailView是 a UIViewController(也在 a 内UINavaigationController)。

和一个空的UISplitView看起来就好了。在,我有这个方法:masterViewdetailViewmasterView

 - (void)tableView:(UITableView *)aTableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
    {
       if (![self splitViewController])
       DetailViewController*myDetailView = [[DetailViewController alloc] init];
       Item *selectedItem = [items objectAtIndex:[indexPath row]];
       [myDetailView setItem:selectedItem];
       [[self navigationController] pushViewController:myDetailView animated:YES];
    }

这适用于 iPhone。对于 iPad,尽管正确detailView显示在 中,但详细视图仍然为空。masterViewController

我怎样才能使出 myDetailview现在detailView(右侧splitView)?

4

1 回答 1

4

我建议你使用 Matt gemmell 的MGSplitViewController

他已经自定义了拆分视图控制器中的所有内容,您可以使用它让主控在右侧,您说UISplitViewController在 iPhone 上工作正常很奇怪

要明确UISplitViewController的是特定于 iPad 而不是 iPhone

因此,请了解 iPad 特定的控制器,例如UIPopOverControllerUISplitViewController

在 Doc's 中,您可以在第一行中自行阅读

Split view controllers are for use exclusively on iPad devices.

 Attempting to create one on other devices results in an exception. 
于 2012-09-02T10:58:51.670 回答