WEPopoverController显示视图并在第二次关闭后显示

时间:2016-04-22 07:59:40

标签: ios objective-c iphone uipopovercontroller wepopover

我尝试使用popover显示视图。由于UIPopoverController不能在IPhone上工作,我使用WEPopoverController。

我的代码:

UIViewController *controller = [[UIStoryboard storyboardWithName:@"Main" bundle:nil]instantiateViewControllerWithIdentifier:@"GetDateController"];
controller.modalPresentationStyle = UIModalPresentationPopover;
WEPopoverController *pop = [[WEPopoverController alloc] initWithContentViewController:controller];
pop.delegate = self;
CGRect screen = [[UIScreen mainScreen]bounds];
CGRect r = CGRectMake(8, 8, screen.size.width-8, 57);
pop.popoverContentSize = r.size;
[pop presentPopoverFromRect:CGRectMake(200, 100, 0, 0) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

当我启动程序时,我看到一个弹出窗口,它会立即消失。 当我在IPhone程序崩溃时使用UIPopoverController时,在iPad上一切正常。

使用WEPopoverController需要做什么才能使其正常工作?

亚历山大。

1 个答案:

答案 0 :(得分:1)

那是因为视图控制器不拥有你创建的popover,没有强引用,并且ARC发现popover的引用计数为0,并立即释放它。您需要做的就是在创建后将popover作为视图控制器的属性。

相关问题