0

Storyboardsを使用するアプリがあります。

最初のビュー (ナビゲーション コントローラー (初期ビュー)) は、LoginView に接続されます。ユーザーがログインすると、それぞれの UITableViewController の 4 つのナビゲーション コントローラー ビューに接続されているタブ コントローラーへのモーダル セグエが表示されます。

概要:

NavController - LoginView --> モーダル セグエ --> TabController ---> 4 つのタブを持つ - テーブルビューを持つ navControllers。

これらの tableviewcontroller の 1 つの中に DetailView があります。そして、 appDelegate で PushNotification を取得したら、そのDetailViewcontrollerに移動する必要があります。

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {

ここでオブジェクトを取得し、そのオブジェクトを正しいビューコントローラーに送信して初期化することもできます。

MyDetailViewController *dvc = [[MyDetailViewController alloc] initWithQuestion:object];

しかし、特定の詳細ビューがpushNotificationから開かれるように、セグエを実行する方法を見つけるためにどこでもグーグルで検索しました。ユーザーが最後に離れたときに離れたビューで、アプリはクールなままです。

これを行う方法のコード例が必要です。

ストーリーボードの初期化、rootviewcontrollerの設定などを試みましたが、何も起こりません(時々エラーが発生する場合を除く)。

注: 「解析」を使用してこの通知を受け取ります。

私は本当に良い答えに感謝します。そして、私は永遠に感謝します。

4

1 に答える 1

0

まず、ストーリーボードでインスタンス化する必要があるView Controllerを割り当て/初期化しないでください。

表示に関しては、次のナビゲーション コントローラー呼び出しを使用できます。

popToRootViewControllerAnimated:
pushViewController:animated:

最後の 1 つだけをアニメーション化するようにします。

または、この回答の提案と同様に、プログラムでモーダル ビュー コントローラーを提示することもできます。

于 2013-10-14T00:21:37.443 に答える