2017-01-23 83 views
1

我在Objective C中有一個項目,它使用從this的幻燈片菜單。從菜單上的每一頁,它具有在底 Slidemenu移動到另一個視圖控制器的正確方法

3按鈕開didSelectRowAtIndexPath的左邊的菜單表,我可以‘移動’到1,2和3的視圖控制器通過使用

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MyStoryboard" bundle:nil]; 
UIViewController *controller = [[UINavigationController alloc] initWithRootViewController:[storyboard instantiateViewControllerWithIdentifier:@"MyStoryboardViewController"]]; 
[self.revealViewController pushMainViewController:controller animated:YES]; 

在第1,2,和3 - 視圖 - 控制器,我初始化漢堡包菜單上的導航項目與此

UIBarButtonItem *barButton = [[UIBarButtonItem alloc] init]; 
UIImage *imgBtn = [UIImage imageNamed:@"menu"]; 
[barButton setImage:imgBtn]; 

barButton.target = self.revealViewController; 
barButton.action = @selector(revealLeftView); 

self.revealViewController.toggleAnimationType = PBRevealToggleAnimationTypePushSideView; 
self.navigationItem.leftBarButtonItem = barButton; 

而且每個視圖控制器具有由3個按鈕的自定義的UIView。這就像Spotify for iOS的底部標籤欄。它將導航到A,B和C視圖控制器,該控制器也具有滑動菜單按鈕。 Bottom button

現在,我可以通過在其自定義視圖 需要目的地的UIViewController實例作爲參數,所以我可以呈現使用

[self presentViewController:vc animated:YES completion:nil]; 

該視圖控制器創建委託導航到A,B,和C但是,結果是,A,B和C視圖控制器無法使用類似於1,2和3視圖控制器的代碼來初始化其幻燈片菜單。它創建漢堡菜單,但它不能顯示幻燈片菜單,因爲它應該是。

那麼我在這裏做錯了嗎?我認爲我的錯在於如何呈現使用presentViewController的A,B和C視圖控制器。還是另一個?任何消化,將不勝感激。非常感謝!

回答

0

解決

相反的:

[self presentViewController:vc animated:YES completion:nil]; 

用途:

[self.revealViewController setMainViewController:vc animated:YES]; 

在這種情況下,VC控制器提出將保持revealViewController屬性,因爲它呈現它。

作爲其開發商表示here

太謝謝你了!

相關問題