0

バックグラウンドで常に実行されているカスタム クラス (NSObject) があります。ある時点で、ユーザーが 2 つのオプションを持つ UIAlertView がポップアップします。カスタム クラスは UIAlertView のデリゲートであるため、ボタンの押下を処理します。

ユーザーが特定のボタンを押した場合、モーダル ビュー コントローラーをユーザーに表示したいと思います。私の問題は、これがすべて NSObject から処理されていることです。UIViewcontroller から処理されていないため、この並列実行中の NSObject からこの新しい View Controller を提示する方法は考えられません。

その上に新しい VC を表示するために、どの VC が現在一番上にあり、アクティブであるかをどうにかして把握する必要がありますか?

4

1 に答える 1

7

基本的に、View Controller を表示するには、ナビゲーション コントローラー (あると仮定) または AppDelegate から同様のものへの参照にアクセスする必要があります。次のようなもの:

MyAppDelegate *appDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];
[appDelegate.navigationController presentViewController:myNewViewController animated:YES completion:nil];
于 2012-12-31T14:13:03.633 に答える