MainStoryBoard 上にTableViewControllerと ViewController を一つづつ設置しています。
下記のコードでは、TableViewControllerのcell1をタップ時に渡す文字列をセットし、TableViewControllerから ViewController に遷移するSegueを呼び出しています。
セル2をタップ時に、MainStoryBoardを作っていない画面 ViewController2.swift に画面推移を行う場合、どのようにコードを記述すれば良いでしょうか。
class SecondTableViewController: UITableViewController { var names = [String]() var identities = [String]() override func viewDidLoad() { super.viewDidLoad() names = ["cell1","cell2"] identities = ["A"] } override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return names.count } override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: "Cell") let label1 = cell?.viewWithTag(1) as! UILabel label1.text = "\(names[indexPath.row])" return cell! } override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { let vcName = identities[indexPath.row] let ViewController = storyboard?.instantiateViewController(withIdentifier: vcName) self.navigationController?.pushViewController(ViewController!, animated: true) } }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/02/20 13:22 編集
2017/02/20 13:34
2017/02/20 14:38