2012-06-30 35 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的框架。

相關問題