簡體   English   中英

iPhone-使用子視圖中的按鈕更改導航控制器的視圖

[英]iPhone - change navigation controller's view, using a button in a subview

我有一個帶有rootview的導航控制器。 rootview包含按鈕,這些按鈕可將新視圖正確地推送到導航控制器上。

但是,在此rootview上,我還有一個子視圖(這是一個滾動預覽,如appStore圖像,由3個UIview項組成的視圖)。 在這些UIView上,有一個我想更改rootview導航控制器的按鈕,就像其他按鈕一樣。

目前,它已構建並運行,但未推送新視圖。 有任何想法嗎?

單擊ScrollItem按鈕上的方法:

MyViewController *newView = [[MyViewController alloc] initWithNibName:@"ManageMyPain" bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:newView animated:YES];  

...我猜是因為,self沒有導航控制器,但是rootview有。

謝謝!!

如果將屬性“ navigationController”推送到導航控制器堆棧,則只能在視圖控制器中設置該屬性。 您的第二個視圖是push viewcontroller的子視圖,這意味着此屬性為NULL,並且如果您嘗試向其推送內容則不會執行任何操作。

是的,這是因為如果未在導航堆棧上推送該控制器或未手動設置該控制器,那么self.navigationController將為nil。

因此,您只需要引用rootViewController.navigationController ,然后再引用[navigationController pushViewController:newView animated:YES]; 將完美地工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM