复用Cell 做 tableviewHeader

问题:自定义cell ,此cell的样式和header一样,于是复用,产生如下情况:

<img src="http://upload-images.jianshu.io/upload_images/1331321-8f4eb2c2e2334d1b.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/120" width=120px height=200px display=inline >

原因:cell虽然继承自UIView,但是init 的方式和UIView不同,在此处,不能复用当做UIView使用,既不能做tableviewheader

即使创建一个UIView做表头,再上面加上cell,也不行。

UIView *header = [[UIView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, 300)];
self.tableView.tableHeaderView = header;
[header addSubview:headerView];
NSLog(@"%@",self.tableView.tableHeaderView);
Snip20160427_9.png

解决方案:
重新创建一个类继承自UIView,除了init方式不同别的code完全复制。

Paste_Image.png

由此想到,反过来是可以的,
有一个UIView要复用做cell,可以先用UITableviewCell做cell,再这个复用的UIView加在Cell上,OK的~~~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • *面试心声:其实这些题本人都没怎么背,但是在上海 两周半 面了大约10家 收到差不多3个offer,总结起来就是把...
    Dove_iOS阅读 27,328评论 30 472
  • 1.OC里用到集合类是什么? 基本类型为:NSArray,NSSet以及NSDictionary 可变类型为:NS...
    轻皱眉头浅忧思阅读 5,195评论 0 3
  • 1.badgeVaule气泡提示 2.git终端命令方法> pwd查看全部 >cd>ls >之后桌面找到文件夹内容...
    i得深刻方得S阅读 10,210评论 1 9
  • *7月8日上午 N:Block :跟一个函数块差不多,会对里面所有的内容的引用计数+1,想要解决就用__block...
    炙冰阅读 7,311评论 1 14
  • 国内源推荐 新版ubuntu要求使用https源,要注意清华:https://pypi.tuna.tsinghua...
    别瞄我阅读 5,033评论 0 1