我有一個使用UINavigation的遊戲設置屏幕,我試圖重置或清除UINavigation一旦一個人選擇了一種顏色。如何清除或重置UINavigation歷史記錄?
我的應用程序的當前進程可以在下面的圖中最好的描述:
Start application -> New game -> Pick character -> Pick Color -> Start game
直到「選取顏色」我用的是UINavigation,然而,當一個顏色挑選我想清除UINavigation歷史。
這樣做的原因是,一旦你開始遊戲,你就不能回去,並且希望UINavigation在沒有跡象表明你可以回去的情況下進行清理(這還包括回到屏幕main menu
)。
我現在這樣做的方式就是這樣;
[self.navigationController popToRootViewControllerAnimated:YES];
GameDashboardVC *dashboard = [[GameDashboardVC alloc] initWithNibName:@"GameDashboardVC" bundle:nil];
dashboard.title = @"Dashboard";
dashboard.managedObjectContext = self.managedObjectContext;
[self.navigationController pushViewController:dashboard animated:YES];
[dashboard release];
問題是,它彈出到rootViewController,但它從不會將儀表板推到堆棧上。
我已經試過:
[self.parentViewController.navigationController pushViewController....]
我沒有試過是把我的儀表盤推根視圖控制器本身裏面,但我擔心,因爲我不知道如果它甚至應該是唯一那裏。
因此,哪裏是放這種功能的正確位置,以及如何清除UINavigation的堆棧。
謝謝你的時間/幫助。
通過你的UINavigationController viewControllers財產,扔掉你不想要的人? – onnoweb 2011-04-27 18:06:41
我會盡力表示感謝。 – zardon 2011-04-28 05:50:31