0

ゲームをプレイするビューにつながるメイン メニューがあります。ゲームをプレイするビューから、ボタンをクリックしてメイン メニューに戻ることができます。これには unwindSegue を使用しています。メインメニューから同じ「ゲームをプレイ」ボタンをクリックし、ビューを置き換えて、unwindSegue が呼び出される前と同じようにゲームの状態を維持する方法はありますか、それともデータのリロードを新しいビューに保存する必要がありますか?

4

2 に答える 2

1

はい、できますが、セグエではできません。これは、常に新しいコントローラーをインスタンス化するためです (アンワインドを除く)。したがって、メイン メニューでゲーム ビュー コントローラーのプロパティを作成し、それがまだ存在しない場合にのみインスタンス化してから、pushViewController:animated: でプッシュすることができます。このようなもの、

-(IBAction)gotToGameView:(id)sender {
    if (! self.game) {
        self.game = [self.storyboard instantiateViewControllerWithIdentifier:@"Game"];
    }
    [self.navigationController pushViewController:game animated:YES];
}
于 2014-02-28T20:07:55.387 に答える
0

ビューを再作成するために必要なデータを保存する必要があります。次に、ユーザーが再び同じ画面に入ると、保存したデータでビューを再作成できます。

于 2014-02-28T20:04:08.807 に答える