在视图外观上启用UISplitViewController的UIPopoverController

时间:2014-01-22 13:20:43

标签: ios uisplitviewcontroller uipopovercontroller

使用UISplitViewController时,我可以在设备处于纵向方向时启用UIPopoverController,并使用以下方法禁用横向:

// Popover is accessed with a swipe to right gesture
- (void)splitViewController:(UISplitViewController *)svc willHideViewController:(UIViewController *)aViewController withBarButtonItem:(UIBarButtonItem *)barButtonItem forPopoverController:(UIPopoverController *)pc {
  _popover = pc;
}

- (void)splitViewController:(UISplitViewController *)svc willShowViewController:(UIViewController *)aViewController invalidatingBarButtonItem:(UIBarButtonItem *)barButtonItem {
  _popover = nil;
}

但是,如果用户在加载视图时已经处于纵向状态,则不会启用弹出窗口,除非用户将设备旋转为横向然后再回到纵向。我想知道如何在视图出现时从头开始启用它。

1 个答案:

答案 0 :(得分:0)

我见过的最常见的问题是你可能设置了splitViewController.delegate太晚了,比如在“ViewDidLoad”中。我通常会在AppDelegate的didFinishLaunchingWithOptions部分或detailViewController的awakeFromNib方法中看到它。