0

我有視圖控制器與(導航控制器),可以翻轉2視圖(列表和地圖),用戶可以切換視圖。地圖是模態視圖。目前我已經使用Chain UIViewControllers用UINavigationController推送和彈出動畫關閉/呈現模態視圖?

當用戶選擇一個位置時,它將沿着一個層次結構並呈現一些位置細節。在這個層次中,用戶仍然可以選擇查看地圖。我正在使用UINavigationController方法將用戶帶回根控制器- (NSArray *)popToRootViewControllerAnimated :(布爾)動畫與動畫是YES,如果我立即調用UIViewController方法- (void)presentModalViewController:(UIViewController * )modalViewController animated:(布爾)動畫它同時做動畫,看起來有點雜亂。現在我決定添加一個簡短的NSTimer來延遲 - (void)presentModalViewController:(UIViewController *)modalViewController animated:(BOOL)動畫被調用。

我的問題,是否有一個更清潔的方式做到這一點?我猜想一個類似的例子是,如果你正在使用App Store應用程序,並且你已經下載了一個新的應用程序。應用商店存在然後動畫到最後一頁的應用程序(假設你已經不在那裏了),我正在尋找這種動畫風格。

非常感謝

回答

0

你是在正確的軌道上,但你可以通過使用 performSelector:withObject:afterDelay:

... 
    [self performSelector:showModalController withObject:nil afterDelay:2.0]; 
... 

-(void)showModalController 
{ 
    [self presentModalViewController:myModalViewController animated:YES]; 
} 
+0

啊,看起來有點清潔跳過使用的NSTimer的步驟,好像做的唯一途徑這是與一個計時器,我想避免它,因爲它可能是在設備之間的一些輕微的性能差異。 – Chris 2011-01-26 22:00:13

相關問題