现在,我试图基于这个UItableVIEwController进行子类化,但我的问题是如何为sublcass设置cellForRowAtIndexPath?如果我将其留空,应用程序会崩溃,因为它需要定义一个单元格.但是,它不应该使用基类中定义的单元格吗?
我究竟需要在子类’cellForRowAtIndexPath方法中使用我在基类中创建的单元格设置?
编辑我被告知解决方案,对于任何想知道的人,你用类似的东西调用你的子类中的超级类
UItableVIEwCell *cell = (UItableVIEwCell *)[super tableVIEw:tableVIEw cellForRowAtIndexPath:indexPath];return cell;
这会将超级单元格返回到您的sublcass,然后返回该单元格.
解决方法 此方法是表视图数据源协议的必需部分,您需要指定该协议.如果你看一下UItableVIEwController的开发者文档,你会看到cellForRowAtIndexPAth不是它的函数;它位于UItableVIEwDataSource which you can find here下.这意味着,基类中没有实现;协议中的函数是抽象的,你应该扩展它们并实现它们.如果您打算创建一个空表,则可以返回空单元格.只需分配它们并在函数中返回它们;子类化表视图单元格不是必需的.一旦您的应用程序停止崩溃,您可以指定所需的文本.使用indexPath使不同部分或不同行的单元格指定不同的文本.
总结以上是内存溢出为你收集整理的ios – 如何正确地继承UITableViewController全部内容,希望文章能够帮你解决ios – 如何正确地继承UITableViewController所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)