2017-01-10 44 views
1

我有一個viewcontroller與多個tableviewcells在其中。我想要使​​用storyboard從tableviewcell移動到另一個viewcontroller。我有一個viewcontroller的導航控制器。我沒有真正找到解決這個問題的方法。從UITableviewcell移動到一個ViewController,並使用故事板

+0

你的意思是通過點擊一個UITableViewCell從VC移動到另一個VC? – Hezron

+0

是的,當我選擇單元格時,它應該移動到VC – meowsush

+0

實現'didSelectRowAtIndexPath'委託。當你點擊一個單元格時,控制會進入這個方法。在那裏寫入計算邏輯並導航到相應的視圖控制器。 – pkc456

回答

1

您應該實施didSelectRowAtIndexPath委託,然後將某些邏輯移至另一個視圖控制器。

@interface ViewController()<UITableViewDelegate> 

... 

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 

    AnotherViewControllerClass *vc = [[UIStoryboard storyboardWithName:@"StoryboardNameOfAnotherViewController" bundle:nil] instantiateViewControllerWithIdentifier:@"AnotherViewControllerIdentifier"]; 

    [self.navigationController pushViewController:vc animated:YES]; 
} 
+0

我無法使用navigationcontroller「Property'navigationController'找不到UITableViewCell類型的對象」 – meowsush

+0

您應該在您的UITableViewController子類中實現此功能,而不是在您的UITableViewCell (自定義)。 – Sri

+0

我泰伯維裏面的ViewController,我已經做了內部視圖 - 控制 – meowsush

0

試試這個..

  • 打開故事板,並選擇您最初的視圖控制器
  • 從頂部欄菜單中選擇編輯器在您的Xcode
  • 選擇嵌入和選擇的UINavigationController

並再次運行您的代碼...

+0

我仍然收到錯誤 – meowsush

+0

我得到了一個使用nsnotificationcenter的代碼,其中我可以解決問題 – meowsush

+0

http://stackoverflow.com/questions/19395343/how-to-pass-the-selected-data-back-到之前的視圖控制器 – meowsush

1

如果你想使用storyBoard,那麼你可以使用Segue從一個tableview單元跳轉到另一個viewcontroller你必須做的是 1)。右鍵單擊並從你的表格視圖單元格拖動到你想要的視圖控制器,然後釋放它,你會看到一個彈出選擇「顯示」 2)。點擊SEGUE並轉到身份檢查,並根據需要 3命名SEGUE標識符)。然後,你必須只寫在一個方法prepareFor賽格瑞methodand寫if語句這樣

if (segue.identifier == "your identifier Name") 
{ 
    //`enter code here`write your logic of pushing the viewcontroller 
} 

因爲如果上面的代碼在迅速,您可以在不使用情節串連圖板,然後用這個方法

if (indexpath.row == 0) 
{ 
    //use the push viewcontroller code here 
} 

每個索引路徑,您可以檢查,推動不同勢重複這些步驟你有不同勢標識符名稱的所有多個tableviewcell

六ewcontrollers

+0

我不想去繼續 – meowsush

相關問題