Swift – 如何从绑定到xib文件的自定义单元格继承

Swift – 如何从绑定到xib文件的自定义单元格继承,第1张

概述我有一个名为Normal ImageCell的自定义单元,它继承自UITableViewCell并绑定到xib.假设我想创建一个名为LargeImageCell的新单元,它继承自NormalImageCell而不创建一个全新的xib.我可以在没有接口构建器的情况下以编程方式轻松完成此 *** 作,但是由于NormalImageCell绑定到xib并且xib中的单元只能连接到一个自定义类和一个reuseId 我有一个名为normal ImageCell的自定义单元,它继承自UItableVIEwCell并绑定到xib.假设我想创建一个名为LargeImageCell的新单元,它继承自normalimageCell而不创建一个全新的xib.我可以在没有接口构建器的情况下以编程方式轻松完成此 *** 作,但是由于normalimageCell绑定到xib并且xib中的单元只能连接到一个自定义类和一个reuseIDentifIEr,我如何才能将它重用于LargeImageCell?

这适用于没有Interface Builder.

class LargeImageCell:normalimageCell {…}

tableVIEw.registerClass(normalimageCell.self,forCellWithReuseIDentifIEr: normalimageCell.ID())tableVIEw.registerClass(LargeImageCell.self,forCellWithReuseIDentifIEr: LargeImageCell.ID())

这与Interface Builder崩溃:

tableVIEw.registerNib(normalimageCell.nib(),forCellWithReuseIDentifIEr: normalimageCell.ID())tableVIEw.registerNib(LargeImageCell.nib(),forCellWithReuseIDentifIEr: LargeImageCell.ID())

顺便说一下,我正在声明像这样的nib和ID方法:

class normalimageCell: UItableVIEwCell {    class func ID() -> String {        return String(self)    }    class func nib() -> UINib {         return UINib(nibname: String(self),bundle: nil)     }}class LargeImageCell: normalmageCell {    ...}
解决方法 你应该从主包中检索nib,如:

class func nib() -> UINib {        return UINib(nibname: String(self),bundle: NSBundle.mainBundle())}
总结

以上是内存溢出为你收集整理的Swift – 如何从绑定到xib文件的自定义单元格继承全部内容,希望文章能够帮你解决Swift – 如何从绑定到xib文件的自定义单元格继承所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/999874.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存