我有一个UITableViewCell的子类,我重写setFrame:为单元格添加插件.在iOS 7中,一切似乎都运行良好,另一方面,在iOS 8上,表视图正确加载单元格但是当我刷新tableview时,单元格会调整大小. 通过在
通过在setFrame中注释代码,tableview行为正确,但我也松开了insets.
有没有人经历过这个?
更新:AFAIK,在iOS 8中,单元框架高度与行高相匹配.
我有类似的问题.解决它:
- (void)setFrame:(CGRect)frame { NSInteger inset = kDefaultViewPadding; frame.origin.x += inset; frame.size.width = kMainScreenWidth - 2*inset; [super setFrame:frame]; }
哪里
#define kMainScreenWidth ([[UIScreen mainScreen] bounds].size.width)
,
不要使用如下代码:
frame.origin.x += TABLE_PADDING;
要么
frame.size.width = self.superview.frame.size.width - (2.0f * TABLE_PADDING);
否则,每次刷新tableview时,单元格的宽度减小(2.0f * TABLE_PADDING).