2013-01-18 26 views
1

當我單擊我的SecondViewController上的一個單元格時,我想從Storyboard轉到我的DetailViewController。如何從selectedRowAtIndexPath中推送DetailViewController

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    NSLog(@"Clicked at row: %@", [barCodeArray objectAtIndex:indexPath.row]); 


} 

我如何推到DetailViewController和發送[barCodeArray objectAtIndex:indexPath.row]呢?

編輯:不工作代碼..

代碼

/*DetailViewController *detailViewController1 = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil]; 
[self.navigationController pushViewController:detailViewController1 animated:YES]; 
[detailViewController1 release]; 
//[self.navigationController popViewControllerAnimated:YES];*/ 

enter image description here

+0

/* * DetailViewController = detailViewController1 [DetailViewController頁頭] initWithNibName:@ 「DetailViewController」 捆綁:無]。 [self.navigationController pushViewController:detailViewController1 animated:YES]; [detailViewController1 release]; //[self.navigationController popViewControllerAnimated:YES]; */ –

+0

但不工作..有沒有一種方法,我沒有設置筆尖名稱,你知道我可以設置它嗎? /檢查筆尖名稱是 –

+0

嘗試[self presentModalViewController:detailViewController1 animated:YES];讓我知道它是否工作.. –

回答

1

讓我們假設Listviewcontroller是它含有的tableview您的第一視圖控制器。從此didSelectRow你想推Detailviewcontroller

。首先檢查您的根視圖控制器是否爲導航控制器或不是。

如果使用的是故事板,那麼首先你RootViewController的必須是導航控制器

要檢查去MainStoryboard文件。

它應該是這樣的。

- >導航控制器 - > Listviewcontroller - > Detailviewcontroller

。一旦確認你的rootview控制器是導航控制器。然後導航到一個ListviewcontrollerDetailviewcontroller你必須使用 「Segue公司

設置新賽格瑞從ListviewcontrollerDetailviewcontroller

設置新的segue 按住Ctrl鍵並點擊位於Listviewcontroller場景中的原型單元格,然後將生成的行拖到Detailviewcontroller場景中。

在釋放線中,選擇從所得到的菜單中選項。

故事板將更新以顯示錶視圖和Detailviewcontroller之間的segue連接。

打開Detailviewcontroller有必要引用這個特定的segue。爲了這樣做,給出標識符。點擊ListviewcontrollerDetailviewcontroller之間的SEGUE連接上,顯示屬性檢查器(查看 - >工具 - >顯示屬性檢查器),並更改標識值「的DetailView」。

Listviewcontroller加入下面的方法。

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

      // and add any other code which you want to perform. 

     } 
} 

欲瞭解更多信息See this link

要Tabbarcontroller添加navigationcontroller ......你可以像這樣添加的圖像。 . Just

我認爲你需要看到這個鏈接:In Storyboard with Navigation Controller and Tabbar Controller

+0

***終止應用程序由於未捕獲異常'NSGenericException',原因:'無法找到導航控制器的Segue'Detailview'。只有當源控制器由UINavigationController的實例管理時,才能使用推塞網。 –

+0

我加了這段代碼來調用函數:[self performSegueWithIdentifier:@「Detailview」sender:self.view]; –

+0

添加了故事板segue,就像我在我的問題中編輯的圖像 –

相關問題