我有一個帶有一個原型單元格的表格視圖。當我運行應用程式時,我可以讓多個單元格顯示正確的內容。我希望每個單元格導航到不同的視圖控制器,而不是同一個視圖控制器只是顯示不同的內容。我為每個視圖控制器創建了一個 segue 并相應地命名它。但我不知道下一步該做什么。我是否將以下內容與某種 if 函式一起使用?:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
{
}
我如何指定如果第一個單元格被選擇使用 segue “one” 去查看控制器“one”,如果單元格 2 被選擇使用 segue “two” 去查看控制器“two”?我知道沒有代碼這更難,但從概念上講這是如何作業的?
uj5u.com熱心網友回復:
是的,didSelectRowAt函式是識別當時選擇了哪個單元格或行的最佳方法。
didSelectRowAt功能應該如下func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { if indexPath.row == 0 { performSegue(withIdentifier: "FirstViewController", sender: nil) } else if indexPath.row == 1 { performSegue(withIdentifier: "SecondViewController", sender: nil) } }Segue Prepare 功能應如下所示
override func prepare(for segue: UIStoryboardSegue, sender: Any?) { if segue.identifier == "FirstViewController" { let vc = segue.destination as? FirstViewController } else if segue.identifier == "SecondViewController" { let vc = segue.destination as? SecondViewController }
希望能幫助到你 :)
uj5u.com熱心網友回復:
您可以從 Xcode 身份檢查器欄中為您的故事板 vc 提供識別符號,最好使用與您的 UIViewController 名稱相同的名稱
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
{
let vc = UIStoryboard.init(name: "Main", bundle: Bundle.main).instantiateViewController(withIdentifier: "MyViewController") as? MyViewController
self.navigationController?.pushViewController(vc!, animated: true)
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/414571.html
標籤:
下一篇:#<ActionView::Base:0x0000000010f748>的未定義方法`user_search_admin_path'
