ios - 快速获取实现协议(protocol)的类类型

标签 ios swift uitableview protocols

所以我想做的是让我可以轻松地在一个 tableView 上实现许多自定义 UITableViewCells,为此我想创建一个有助于填写功能的协议(protocol):

- (void)registerClass:(nullable Class)cellClass forCellReuseIdentifier:(NSString *)identifier

到目前为止我的协议(protocol)如下所示:

protocol TableViewCellClassReportingProtocol: class {
    func reuseID() -> String
}

extension TableViewCellClassReportingProtocol {
    static func classObject() -> AnyClass? {
        return self.class
    }
}

但是,即使我指定该协议(protocol)必须由类实现,我在获取类类型时仍遇到问题。任何建议,我可能会以错误的方式处理这个问题

最佳答案

所以这接近正确的答案,让我详细阐述并赞扬 Charles A。

dynamicType 是 answar 的一部分!很棒的电话!

函数植入也必须改变,因为子类化和静态真正意味着“类最终”

Protocol for class method

覆盖点必须是

override class func reuseID() -> String

关于ios - 快速获取实现协议(protocol)的类类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33422916/

相关文章:

swift - 在 Observable 数组中搜索一个值

ios - 如何阻止 UITableView 在弹出后返回顶部单元格

uitableview - 在 iOS 11 中滚动到表格 View 的顶部

ios - 为什么 UICollectionView cellForItemat indexpath 会在一开始就为所有单元格调用

ios - 集合查看单元格图片按比例查看

ios - showCallout 无需点击 -iOS

ios - 为 UITableView 标题创建数组

objective-c - pushViewController 占用过多显示 View

arrays - 知道数组是否包含某种类型的元素

ios - 当前 View 中单元格的快速高度