2014-07-06 57 views
0

我遇到了一個問題。我有一個viewController1,我點擊一個按鈕。當我點擊這個按鈕時,我希望它在viewController1上顯示另一個視圖控制器(viewController2)(viewController2有點透明)。 我想以編程方式做到這一點。 我嘗試這樣做,但是當我按下按鈕沒有任何反應:Objective-C以編程方式在另一個視圖控制器上顯示視圖控制器

Notification *newView = [[Notification alloc]initWithNibName:@"Notification" bundle:nil]; 
[self.navigationController pushViewController:newView animated:YES]; 

我改名一些變量,以使其更清晰。感謝您的回答!

編輯:也許我是不夠清楚,我想viewController2是ontop的的viewController1

+0

如何你想表現出來?如果它帶有導航(例如從屏幕的底部或右側滑入)?另外,你可以檢查一下'navigationController'是否初始化爲:'NSLog(@「%@」,self.navigationController);',如果它是'nil',那麼確保你的視圖控制器可以訪問'navigationCotnroller' 。' – nburk

+0

它看起來並不重要,最好的是沒有動畫。此外,輸出不是零。 – user3809400

+0

您的按鈕方法中的代碼是否被執行?如果你想讓viewController1在viewController2下面可見,那麼這個方法將不起作用。推送視圖控制器會導致舊控制器的視圖被推出屏幕並從窗口的視圖層次中移除。 – rdelmar

回答

0

嘗試以下: -

Notification *newView = [[Notification alloc]initWithNibName:@"Notification" bundle:nil]; 
    [self presentViewController:newView animated:YES completion:nil]; 
+0

以前已經嘗試過,也不起作用:( – user3809400

+0

如果這不適用於你,你在代碼中做了很大的錯誤。 – nburk

相關問題