在 swift 中实现通用协议 class
Implementing Protocol In Generic class in swift
假设我想 Class TableViewDataSourceImpl
像这样:
class TableViewDataSourceImpl<T, U: UITableViewCell where U: ReusableCell>:NSObject, UITableViewDataSource {
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
}
}
然后 xcode 告诉我错误 type 'TableViewDataSource<T,U>' does not conform to protocol 'UITableViewDataSource'
这是 xcode 中的错误吗?或者 swift 不能使 class 具有实现协议的泛型?因为我要 tableView.datasource = tableViewDataSource
我知道我们无法将 swift 泛型转换为 objective-c,但我不会在此处使用任何 objective-c
我在 xcode 7 beta 1
中这样做
只需将我的 xcode 更新到 beta 2 即可!
假设我想 Class TableViewDataSourceImpl
像这样:
class TableViewDataSourceImpl<T, U: UITableViewCell where U: ReusableCell>:NSObject, UITableViewDataSource {
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
}
}
然后 xcode 告诉我错误 type 'TableViewDataSource<T,U>' does not conform to protocol 'UITableViewDataSource'
这是 xcode 中的错误吗?或者 swift 不能使 class 具有实现协议的泛型?因为我要 tableView.datasource = tableViewDataSource
我知道我们无法将 swift 泛型转换为 objective-c,但我不会在此处使用任何 objective-c
我在 xcode 7 beta 1
中这样做只需将我的 xcode 更新到 beta 2 即可!