寄存器类与Swift的模糊使用

时间:2014-10-09 00:00:24

标签: ios swift

执行

时出现“ambiguous use of registerclass”错误
tableView.RegisterClass( cellClass: CustomTableViewCell.self,
                         forCellReuseIdentifier: "CustomCell"
                         )

CustomTableViewCell是一个Objective-c类,它已被包含在桥接头中。

我无法弄清楚它有什么问题?谁能告诉我这个错误是什么意思?

1 个答案:

答案 0 :(得分:6)

您对registerClass的调用具有第一个参数的参数名称(cellClass)。在Swift中,省略了第一个参数名称。

tableView.registerClass(CustomTableViewCell.self, 
                        forCellReuseIdentifier: "CustomCell")

错误表明寄存器类的使用不明确是因为编译器无法判断你要调用哪一个。 UITableView上有两个registerClass方法:

func registerClass(cellClass: AnyClass, forCellReuseIdentifier identifier: String)
func registerClass(aClass: AnyClass, forHeaderFooterViewReuseIdentifier identifier: String)

您的通话与其中任何一方都不匹配,因此不明确。