我有一個包含一堆UITableCellViews的筆尖,這些UITableCellViews都來自一個名爲MessageCell
的類。這些自定義類位於Objective C中,我已將它們橋接到我的Swift項目中。Swift:查找給定類型的實例的泛型函數
我希望能夠獲取感興趣的一個。我想這個功能
func cellTypeFromNib<T>(type : T) -> MessageCell? {
var cell : MessageCell? = nil
for obj in self.nibObjs {
if (obj is T) {
return obj as? MessageCell
}
}
return cell
}
並調用它像這樣:
let cell = cellTypeFromNib(DerivedCell.self)?
這悲慘的失敗了。通過調試器,它看起來像nibObjs
中的對象與我傳入的元類型不具有相同的類型信息。
我覺得這應該是可能的,但我很難過。
self.nibObjs包含的UITableViewCell實例的數組 – MattD 2015-02-06 02:58:50
公平一點 - 我將修改 – MattD 2015-02-06 03:01:27
接受我自己的答案,因爲通過林太郎帶來的一個不爲雨燕1.1的 – MattD 2015-02-22 17:44:45