2014-10-09 26 views
3

曖昧使用的RegisterClass與斯威夫特

tableView.RegisterClass(cellClass: CustomTableViewCell.self, 
         forCellReuseIdentifier: "CustomCell" 
         ) 

CustomTableViewCell當我得到的「ambiguous use of registerclass」的錯誤是一個Objective-C類和它被包含在一個橋接報。

我無法弄清楚它有什麼問題嗎?誰能告訴我那個錯誤是什麼意思?

回答

6

您致電registerClass的參數名稱(cellClass)爲第一個參數。在Swift中,第一個參數名稱被省略。

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

錯誤表示模糊使用registerClass的原因是因爲編譯器無法確定您嘗試調用哪一個。有兩種方法registerClass上的UITableView:

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

您的電話不符合其中任意一個,因此它是不明確的。

+0

我會通過刪除它去今晚。但是,如何讓第一個參數名稱與「模糊使用」錯誤有關? – 2014-10-09 00:22:22

+0

我明白了。通過刪除參數名稱使其匹配第一個調用。真棒:)真的很欣賞隊友。應該給你一杯啤酒。 – 2014-10-09 00:39:08