2012-06-30 37 views
0

我在下面的目标是让Popover通过两条路径之一出现。以编程方式调用Popover不起作用

第一个按钮被按下,第二个按倒数计时器到时。

第一个工作 - 我有一个Storyboard Segue配置为Popover并绑定到按钮。按下按钮时,弹出窗口出现。大!

第二个不是 - 我有一个计时器(NSTimer),它每秒调用一次方法,用倒计时中剩下的秒数更新一个标签。当倒计时达到零时,我想自动调用弹出窗口。我试过两种方法 - 一种是以编程方式调用按钮([self popoverButton:self])。另一种是使用下面的代码:

PopViewController *myPopVC = [[PopViewController alloc] init]; 
UIStoryboardSegue *aSegue = [[UIStoryboardSegue alloc] initWithIdentifier:@"popoverSegue" source:self destination:myPopVC]; 
[self prepareForSegue:aSegue sender:self]; 
[aSegue perform]; 

无论是这两种方法的工作所以任何帮助,将不胜感激。

回答

0

确保segue在故事板中设置了一个标识符,然后调用performSegueWithIdentifier方法。有关如何在计时器到期时执行此操作的示例,请参阅此答案。

Call another view when user taps on pin in mapview

+0

谢谢凯文。 'performSegueWithIdentifier'方法适用于我。 干杯。 Tony。 – Tony

0

使用popOverController的方法:

[pop presentPopoverFromRect:rect inView:self.view permittedArrowDirections: UIPopoverArrowDirectionUp animated:YES]; 

,您将需要创建一个用的CGRect要酥料饼的箭头指向的位置。或者你可以指定视图内的任何UIView的框架。

相关问题