我使用WEPopover(https://github.com/werner77/WEPopover)在iPhone上显示弹出窗口。不幸的是,如果我对其UIViewController
使用通用contentViewController
,则无效。
- (IBAction)showPopover:(id)sender
{
UIViewController *contentViewController = [[PopoverContentViewController alloc] init];
popoverController = [[WEPopoverController alloc] initWithContentViewController:contentViewController];
popoverController.delegate = self;
[popoverController presentPopoverFromBarButtonItem:sender permittedArrowDirections:(UIPopoverArrowDirectionUp) animated:YES];
}
这只是给我一个没有内容的黑色popover。 PopoverContentViewController
只是由XCode生成的普通UIViewController,没有任何更改。在我的故事板中,我添加了一个ViewController,将其大小设置为自由形式,并将视图的大小设置为低于标准iPhone大小的值。我将此viewcontroller的所有者设置为PopoverContentViewController
。不幸的是它没有显示内容,它只是显示一个黑色弹出窗口。
如果我将PopoverContentViewController
更改为从UITableViewController
派生,则会显示表格视图,但这不是我想要的。
我做错了什么?
答案 0 :(得分:2)
您可能需要从故事板加载视图控制器,而不是在显示时使用alloc / init对其进行实例化。
这样的事情:
UIViewController* contentViewController = [[UIStoryboard storyboardWithName: @"yourStoryboardName" bundle: nil] instantiateViewControllerWithIdentifier: @"yourViewControllerID"];