首页 > 代码库 > UITableViewCell的层级
UITableViewCell的层级
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的层级
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。