2014-02-19 58 views
0

!(http://s10.postimg.org/8gy1q2rrt/question.png) 當我到達右側的最後一個視圖控制器並按BACK按鈕時,我回到第一個控制器而不是第二個,我想返回1步。 (1> 2> 3)。所以我在他們之間添加了導航控制器(不知道爲什麼),並且當我想要轉到第三個視圖控制器時,應用程序崩潰。所有的賽段都是PUSH。 這是按鈕#1代碼。 @「tevzeulimenu」是tabbarcontroller的ID。嵌入導航控制器後應用程序崩潰

- (IBAction)goMenu1:(id)sender { 
UITabBarController *firstView = [self.storyboard  
instantiateViewControllerWithIdentifier:@"tevzeulimenu"]; 
[self.navigationController pushViewController:firstView animated:YES]; 
} 

這是賽格瑞代碼:

-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
if ([[segue identifier] isEqualToString:@"show1"]) 
{ 
    DetailMenuViewController *detailViewController = 
    [segue destinationViewController]; 

    NSIndexPath *myIndexPath = [self.tab1 
           indexPathForSelectedRow]; 

    long row = [myIndexPath row]; 

    detailViewController.detailMenu= @[_menu1Images[row], 
             _menu1Names[row], 
             _menu1Prices[row], 
             _menu1Text[row]]; 
} 
} 

幫助解決這個問題。我想從右側(最後一個)的第三個視圖控制器返回到第二個,而不是第一個。

+0

什麼是錯誤信息? – Larme

+0

無法識別的選擇器發送到實例0x8aa1170' – user3270554

回答

0

你應該使用:

- (IBAction)goMenu1:(id)sender { 
    [self performSegueWithIdentifier:@"show1" sender:self]; 
} 

當然,你必須在你的故事板與標識添加一個Segueshow1

希望這會有所幫助。

編輯:在上下文中。

+0

嗨,謝謝你的回覆,你可以編輯我的代碼。因爲你已經發現我是新手。 – user3270554

+0

確定在這裏我是新手在stackoverflow,但我認爲你只需要有效我的答案。 –

+0

它不起作用,因爲a)我在錯誤的地方使用它b)它不正確,所以請你可以編輯我的代碼。我用你的代碼替換了語句,但它沒有幫助。 – user3270554