2012-12-31 65 views
0

我有一個在後臺不斷運行的自定義類(NSObject)。在某個時候,它彈出一個UIAlertView,用戶有兩個選項。自定義類是UIAlertView的委託,因此處理按鈕按下。從NSObject呈現模態視圖控制器

如果用戶按下特定的按鈕,我想向用戶展示一個模態視圖控制器。我的問題是,這是從NSObject處理的。它不是從一個UIViewcontroller處理的,所以我想不出從這個並行運行的NSObject提供這個新的View Controller的方法。

我是否需要弄清楚哪個VC當前處於頂部並處於活動狀態,以便在其上呈現一個新的VC?

回答

7

基本上你需要訪問一個對你的導航控制器的引用(假設你有一個)或類似的東西來說出AppDelegate以呈現視圖控制器。類似以下內容:

MyAppDelegate *appDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate]; 
[appDelegate.navigationController presentViewController:myNewViewController animated:YES completion:nil]; 
+0

巨大的謝謝你,很好的答案,簡單而有效。它適用於我需要從常見NSObject類呈現的SLComposeViewController。乾杯 –

相關問題