我已经查看了互联网上的每个答案,但它一直给出错误。我知道这可能会重复,但解决方案对我不起作用。
- 我已将 detailViewController 设为公共(public)类
我添加了 detailViewController.swift 目标成员作为我的测试目标。
import UIKit class MainTableViewController: UITableViewController { var items:[Item]=itemData @IBAction func cancelToDetailViewController(segue:UIStoryboardSegue){ } @IBAction func saveItemDetail(segue:UIStoryboardSegue){ let DetailTableViewController = segue.sourceViewController as DetailTableViewController; }
错误提示使用了未声明类型的“detailViewController”
最佳答案
假设“detailViewController”是指您的“DetailTableViewController”类,那么问题完全在于您的命名约定。你正在做的是试图将你的源 View Controller 分配给一个变量(或常量,这无关紧要)“DetailTableViewController”,它已经是你的类的名称。这是不允许的。
您需要为变量命名。惯例是类以大写字母开头,实例以小写字母开头,您应该遵守这一点,因为这有助于防止此类事情在未来发生。
也就是说,以下内容应该适合您。请注意,唯一的区别是变量开头的“d”是小写而不是大写。
@IBAction func saveItemDetail(segue: UIStoryboardSegue) {
let detailTableViewController = segue.sourceViewController as DetailTableViewController
}
关于uitableview - SWIFT:使用未声明的类型 "detailViewController",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28575099/