0

iPhoneのプッシュ通知サービスに小さな問題があります。私はiPhoneにプッシュ通知を実装しましたが、それは非常にうまく機能します。

私の問題はそれです

アプリケーションを閉じる-アプリを閉じて通知アラートを受け取ったときに、通知の表示ボタンをクリックすると、アラートビューページに移動します。そのアラートページでクリックすると戻るボタンがあり、固定されている他のページに移動します。

アプリケーションオン-アプリがオンで、自分のページの1つにいるとき、通知アラートが表示されます。通知の表示ボタンをクリックすると、上記と同じアラートビューページに移動します。しかし、今、戻るボタンをクリックすると、通知前の前のページに移動したいと思います。アプリを閉じたときのように固定ページにはありません。

iPhoneでこれを行うにはどうすればよいですか?

私の問題を解決するためにあなたの論理/アイデアを共有してください?

4

1 に答える 1

0

通知から指示されるたびに、ナビゲーション スタックを置き換えます。FirstViewController戻るボタンをクリックした後に戻りたい場所であると仮定しましょう。そしてSecondViewController、アラートをクリックしたときに行きたい場所です。

したがって、通知から参照するたびに、ナビゲーション スタックを次のように置き換えます。

FirstViewController  *objFirstViewController  = [[FirstViewController alloc] initWithNIBName: @"FirstViewController" bundle: nil];
SecondViewController *objSecondViewController = [[SecondViewController alloc] initWithNIBName: @"SecondViewController" bundle: nil];
NSArray *aryControllers = [NSArray arrayWithObjects: objFirstViewController,objSecondViewController, nil];
[self.navigationController setViewControllers: aryControllers animated: YES];
[objFirstViewController release];   
[objSecondViewController release];

提示されたビューからポップバックすると、常にFirstViewController. 上記は、アプリがバックグラウンドではない (または閉じている) 場合の状況です。アプリがバックグラウンドになっている状態と、通知を受け取ったときの状態については、

AppDelegate から、application:didReceiveRemoteNotification:通常のプッシュと同じようにビューをプッシュできます。その後、通知を受け取る前の前のページに戻ります (プロジェクト全体でグローバル ナビゲーション コントローラーを使用していると仮定して)。

とにかくこれが役に立てば幸いです。

于 2012-07-06T09:11:10.447 に答える