`
hua397
  • 浏览: 53849 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

可重用的UITableViewCell小记

阅读更多

   3.0的基础教程里说自定义table的cell有两种方式:在cell的contentview上addSubview 或者通过IB自定义一个,书上有没有说两者的区别我倒是忘了,最近项目用到,感觉用IB创建方便,毕竟可视化的,但是出现一个问题,真机上滚动会一卡一卡的,网上说不平滑的滚动可能是Identifier没在IB作相应设置(参照:http://blog.raylife.com/?p=951),但是我已经设置了,没用...另外有的说可能是加载的子视图太多,我的子视图还没有优酷的多...

 

   之后无意中发现一个贴子的回复(参照:http://www.devdiv.net/bbs/thread-36587-1-2.html)说道不用NIB就可以复用,也就是IB不可以复用,然后google了一下,cell用nib加载,发现这篇文章利用克隆避免重复加载IB(参照:http://www.devdiv.net/bbs/viewthread.php?tid=30202 作者和那个帖子是同一个人,汗...)发现克隆方法可以用,但是比较复杂,反正经过一系列的探索,决定用cell的contentview上addSubview的方法算了,用代码控制而不用IB

 

    用代码就比较简单了,cell==nil的时候alloc新的,重用的时候用tag获取子视图,所不同的是新的要设置一下样式(字体,背景之类的),重用的直接赋值即可

 

    另外,如果数据是从网上加载,那么第一次加载table的时候不必用重用机制,返回个cell就行了,当数据下载之后,再用重用机制

 

    呼呼,不用不知道,这之间的区别还挺大,特此对上面提到的各位同志致以谢意

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics