Ios 为什么在创建表视图单元格时在单元格类参数上调用.self?
为什么我不能用Ios 为什么在创建表视图单元格时在单元格类参数上调用.self?,ios,swift,uitableview,Ios,Swift,Uitableview,为什么我不能用TodayTableViewCell而不是TodayTableViewCell.self private let reuseIdentifier = "Cell" override func viewDidLoad() { super.viewDidLoad() tableView.registerClass(TodayTableViewCell.self, forCellReuseIdentifier: reuseId
TodayTableViewCell
而不是TodayTableViewCell.self
private let reuseIdentifier = "Cell"
override func viewDidLoad() {
super.viewDidLoad()
tableView.registerClass(TodayTableViewCell.self, forCellReuseIdentifier: reuseIdentifier)
}
TableView的registerClass方法需要AnyObject.type类型的参数。您应该传递单元格类型的值 从苹果的文档中: 可以使用后缀自表达式作为值访问类型。 例如,SomeClass.self返回SomeClass本身,而不是实例 某类的
您可以阅读更多信息。TableView的registerClass方法需要类型为AnyObject.type的参数。您应该传递单元格类型的值 从苹果的文档中: 可以使用后缀自表达式作为值访问类型。 例如,SomeClass.self返回SomeClass本身,而不是实例 某类的
你可以读更多。我明白了。这也解释了为什么我在执行
TodayTableViewCell()
而不是TodayTableViewCell.self
时出错,因为参数需要类型而不是实例。非常感谢。为了明确起见,它实际上有一个参数AnyClass::它是AnyObject.Type.I的typealias。这也解释了为什么我在执行TodayTableViewCell()
而不是TodayTableViewCell.self
时出错,因为参数需要类型而不是实例。非常感谢。为了明确起见,它实际上有一个参数AnyClass::它是AnyObject.Type的typealias。