码迷,mamicode.com
首页 > 其他好文 > 详细

UITableViewCell的层级

时间:2014-09-15 16:02:59      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:style   color   io   os   ar   div   sp   on   c   

1、一个在contentView 上的imageView:

imageView(UITableViewCell中的)的superView是UITableViewCellContentView。

imageView的superView的superView是UITableViewCell

imageView的superView的superView的superView是UITableView


2、在iOS6上UITableViewCell的层级为:

UITableViewCell—>UITableViewCellContentView;
在iOS7上UITableViewCell的层级为:
UITableViewCell—>UITableViewCellScrollView—>UITableCellContentView。
3、iOS7上多了一层,cell不再是contentView的superview,于是

    [cell insertSubview:myView belowSubview:cell.contentView];

这个方法执行失败,相当于只是[cell addSubview:myView];,所以达不到想要的效果。

【解决方案】:
要在iOS6和iOS7上都能实现将myView插入到contentView底下的效果,将语句改成如下方式即可:

    [cell.contentView.superview insertSubview:myView belowSubview:cell.contentView];


【吐槽】:
坑爹的苹果,坑爹的iOS7,我暂时没有找到任何文档有关于UITableViewCellScrollView这个类的描述,也无法直接引用这个类,Xcode会提示”Unknown type name ‘UITableViewCellScrollView’”。还好可以用上面的方法间接引用,否则完全是作死啊。

UITableViewCell的层级

标签:style   color   io   os   ar   div   sp   on   c   

原文地址:http://blog.csdn.net/u014624597/article/details/39292323

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!