我用xib文件构建了一个自定义的tableview。我添加了一个带有顶部边框的UILabel
,顶部边框的代码是
UIView *topBorder = [UIView new];
topBorder.backgroundColor = [UIColor blackColor];
topBorder.frame = CGRectMake(0, 0, cell.nameOfImage.frame.size.width, 1);
[cell.nameOfImage addSubview:topBorder];
cell.nameOfImage.text = [tableData objectAtIndex:indexPath.row];
但它的屏幕大小不同,如5s和6s plus。它没有以UILabel
大小显示。在5s
标签上没有显示上边框。
答案 0 :(得分:0)
您需要根据topBorder
宽度更新cell.nameOfImage
的宽度。将框架更改的代码移至layoutSubviews
:
<强>目标C 强>:
- (void)layoutSubviews {
[super layoutSubviews];
UIView *top = [[UIView alloc] init];
topBorder.frame = CGRectMake(0.0, 0.0, nameOfImage.frame.size.width, 1.0)
}
<强>夫特强>:
override func layoutSubviews() {
super.layoutSubviews()
topBorder.frame = CGRectMake(0, 0, nameOfImage.frame.size.width, 1);
}