2014-01-27 78 views
0

我有一個應用程序UITableView(在PatientViewController),每次點擊不同的細胞應發送不同的值到ArticleViewController。我做了這個代碼ViewControllers之間的每一個轉變:iOS7 segue不使用Storyboards

UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main_iPhone" bundle:nil]; 
NewsViewController *mv = (NewsViewController*)[mainStoryboard instantiateViewControllerWithIdentifier:@"news"]; 
[self presentViewController:mv animated:YES completion:NULL]; 

我不想使用NavigationController,不想用故事創造SEGUE。那麼,如何在不使用Storyboard的情況下只編寫代碼呢?謝謝。

+0

你正在使用什麼容器?你想有自定義動畫或UINavigationController風格? –

+0

我有一個UIViewController擴展UITableViewDelegate和UITableViewDataSource。它有一個tableview和一個名爲「Cell」的自定義單元。動畫和NavController不是我關心的。正如你所知道的,我們正在通過右鍵拖動按鈕到另一個視圖控制器來在Storyboard上創建一個segue。 **我不想要它**我想要做的就是在tableviewcell上點擊創建一個segue,而不是僅僅通過編碼來使用StoryBoard。 –

回答

0

試試這個:

NewsViewController *nVC = [self.storyboard instantiateViewControllerWithIdentifier:@"news"]; 
[self presentViewController:nVC animated:YES completion:NULL]; 
1

您可以創建一個UIStoryBoardSegue有以下幾點:

UIStoryboardSegue :: initWithIdentifier:source:destination: 

,然後,從源頭UIViewController,可撥打以下內容:

performSegueWithIdentifier:sender: 

有關詳細信息,請參閱UIStoryBoardSegue文檔的概述部分。

0

如果您不想通過Storyboard製作任何視圖控制器,請使用XIB製作視圖控制器。然後,調用以下方法來初始化一個實例。

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil; 

當選中某個單元格時,可以使用以下方法呈現要顯示的視圖控制器。

- (void)presentViewController:(UIViewController *)viewControllerToPresent animated: (BOOL)flag completion:(void (^)(void))completion