0

次のように、ビュー コントローラーに分割ビュー コントローラーを追加しました。

rootViewController = [[RootViewController alloc] initWithStyle:UITableViewStylePlain];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:rootViewController];

detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];
rootViewController.detailViewController = detailViewController;

splitViewController = [[UISplitViewController alloc] init];
splitViewController.viewControllers = [NSArray arrayWithObjects:navigationController, detailViewController, nil];
splitViewController.delegate = detailViewController;

[self.view addSubview:splitViewController.view];

しかし、DetailViewController で定義されたこのメソッドは呼び出されません。

- (void)splitViewController: (UISplitViewController*)svc willHideViewController:(UIViewController *)aViewController withBarButtonItem:(UIBarButtonItem*)barButtonItem forPopoverController: (UIPopoverController*)pc 

splitviewcontrollerinを設定するとwindow、このメソッドが呼び出されます! アドバイスはありますか?

4

2 に答える 2

1

UISplitViewControllerDelegateDetailViewController クラスがプロトコルを実装していることを確認してください。

于 2011-12-14T07:26:22.933 に答える
1

私が知っているように、splitViewController は他のビューの subView になることはできないため、splitViewController は常に mainViewController でなければなりません。

于 2011-12-14T08:08:53.763 に答える