当前位置 : 主页 > 手机开发 > ios >

uitableview – iOS 8单元格大小调整

来源:互联网 收集:自由互联 发布时间:2021-06-11
我有一个UITableViewCell的子类,我重写setFrame:为单元格添加插件.在iOS 7中,一切似乎都运行良好,另一方面,在iOS 8上,表视图正确加载单元格但是当我刷新tableview时,单元格会调整大小. 通过在
我有一个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).

网友评论