0

我想在啓動時通過滑動或按下推送通知來啓動initialView的childViewController。啓動一個帶有「返回」按鈕的childViewController。 iOS

現在,我可以啓動到childView,但功能不起作用。我在.m文件中啓動的其中一個標籤也未顯示。

我該如何確保每個函數(返回按鈕(回彈到父窗口),視圖中的函數按鈕,以及導致的細節)工作正常。

這是我的用於裝載視圖代碼:

UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard" 
                  bundle: nil]; 
NotificationsViewController *viewController= [mainStoryboard instantiateViewControllerWithIdentifier:@"NotificationsViewController"]; 
UINavigationController *nav = [[UINavigationController alloc] 
            initWithRootViewController:viewController]; 

[_window setRootViewController:nav]; 
+0

您正在將其設置爲根視圖控制器,而不是將其推入堆棧。如果你想能夠回去,你需要一個parentViewController,在這種情況下,不會有 – CWitty

+0

@CWitty,所以我怎麼能從應用程序委託將它推到堆棧上? – user3178926

+0

公開無論您現有的導航控制器是什麼,並推動它。 – CWitty

回答

0

問題:

根視圖控制器提供窗口的內容圖。爲此屬性分配視圖控制器將視圖控制器的視圖作爲窗口的內容視圖進行安裝。如果窗口具有現有的視圖層次結構,則在安裝新視圖之前將刪除舊視圖,這就是爲什麼您看不到後退按鈕的原因,因爲它們不再存在。

解決方案:

推視圖控制器到接收機的,導航欄將提供導航回先前視圖控制器。

NotificationsViewController *viewController = [[NotificationsViewController alloc] init]; 
[self.navigationController pushViewController:viewController animated:YES];