2012-11-30 79 views
1

我使用導航控制器推送了一個視圖(比如說:first_view),從這個視圖我推了一些其他視圖, 在一種情況下,事件會通知第一個視圖彈出,在這種情況下如果我彈出視圖直接通過釋放它的記憶是否會正確地彈出所有的孩子的觀點?或者我是否需要通知所有的子視圖才能相應地彈出。彈出基本視圖。它會彈出它的所有子視圖嗎?

希望我的問題是可以理解的:)

+0

你想要什麼?你想要去第一個父視圖控制器? –

+0

通知將直接進入父視圖,如何彈出其所有子視圖? – fztest1

回答

1

如果您已將viewController1, viewController2, viewController3viewController4推入UINavigationController,並且您撥打[self.navigationController popToViewController:viewController1];[self.navigationController popToRootViewController];,則會自動將p從導航堆棧輸入viewController2viewController3。你不需要明確地彈出它們。

+0

哦..只有一個我想聽到謝謝。我會在一段時間後接受你的回答,以便我們得到不同的意見,如果有的話,謝謝。 – fztest1

1

你可以用兩種方式返回到ParentView例如:

[self.navigationController popToRootViewControllerAnimated:YES]; 

,或者如果你推在view2後有view1然後view3然後如果你想彈出到視圖2,那麼你可以用1索引集和view1指數0

[self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:0] animated:YES];// set index of viewControler which you want to display 

+0

是的,我可以像這樣彈出父視圖,那麼它是什麼子視圖(視圖從父母推)我需要彈出所有的第一個,然後父母? – fztest1

+0

你想自動動畫它從小孩到家長流行? –

+0

嘿你還可以用索引定義這個像這樣.. [self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:0] animated:YES]; //設置你想要顯示的viewControler的索引 –