swift 从 tableView 通过 navigationController 到 TableViewController
swift segue from tableView through a navigationController to a TableViewController
我无法将它转到另一个 TableViewController。我一直遇到崩溃......我知道这是因为它正在通过 NavigationController 而我不知道如何从主控制器 segue 传递它并转到 tableView。这是外观
从 navControl 到 tableView 的 segue 称为 "ChildsInfo"
这是我正在尝试并崩溃的方法。
class PagesViewController: UIViewController, UITableViewDelegate {
@IBOutlet weak var pagesTableView: UITableView!
@IBOutlet weak var infoProgressBar: UIProgressView!
let pages = ["Page 1","Page 2","Page 3"]
var myIndex = 0
var selectedPage: String?
override func viewDidLoad() {
super.viewDidLoad()
pagesTableView.dataSource = self
pagesTableView.delegate = self
// Do any additional setup after loading the view.
}
}
extension PagesViewController: UITableViewDataSource {
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "pagesTableViewCell")
cell?.textLabel?.text = pages[indexPath.row]
return cell!
}
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return pages.count
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 71.0
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if indexPath.row == 0 {
performSegue(withIdentifier: "ChildsInfo", sender: self)
}
}
}
根据您发布的图片,我假设您遇到的崩溃是因为未找到 segue。这是因为您应该尝试从 table 视图(即图像左侧的 link )对导航控制器本身执行 segue。然后导航控制器有一个根视图控制器,您可以根据需要将其他控制器推入堆栈。
我无法将它转到另一个 TableViewController。我一直遇到崩溃......我知道这是因为它正在通过 NavigationController 而我不知道如何从主控制器 segue 传递它并转到 tableView。这是外观
从 navControl 到 tableView 的 segue 称为 "ChildsInfo"
这是我正在尝试并崩溃的方法。
class PagesViewController: UIViewController, UITableViewDelegate {
@IBOutlet weak var pagesTableView: UITableView!
@IBOutlet weak var infoProgressBar: UIProgressView!
let pages = ["Page 1","Page 2","Page 3"]
var myIndex = 0
var selectedPage: String?
override func viewDidLoad() {
super.viewDidLoad()
pagesTableView.dataSource = self
pagesTableView.delegate = self
// Do any additional setup after loading the view.
}
}
extension PagesViewController: UITableViewDataSource {
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "pagesTableViewCell")
cell?.textLabel?.text = pages[indexPath.row]
return cell!
}
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return pages.count
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 71.0
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if indexPath.row == 0 {
performSegue(withIdentifier: "ChildsInfo", sender: self)
}
}
}
根据您发布的图片,我假设您遇到的崩溃是因为未找到 segue。这是因为您应该尝试从 table 视图(即图像左侧的 link )对导航控制器本身执行 segue。然后导航控制器有一个根视图控制器,您可以根据需要将其他控制器推入堆栈。