UITableViewCell 的左右边距
Posted
技术标签:
【中文标题】UITableViewCell 的左右边距【英文标题】:Right and left margin to UITableViewCell 【发布时间】:2013-11-28 13:31:28 【问题描述】:我创建了以下 UITableViewCells 并将背景设置为白色。
(黑框为模拟器框)。
我想为单元格添加左右边距。
我查看了许多问答,他们都建议使用 UiImageView 自定义单元格。还有其他方法吗?
【问题讨论】:
你是使用storyboard还是原生代码来创建tableview 我使用的是故事板,但是在 UIViewController 中实现了 delegates 方法,它有一个 UITableView 也许你可以试试tableview分组样式 我将样式更改为组样式,但没有添加边距 每个边距你的意思是图片中灰色的边框? 【参考方案1】:添加UIView
作为单元格的contentView:
在cellForRowAtIndexPath
UIView *viewLeft = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 10, heightOfTheCell)];
viewLeft.backgroundColor = [UIColor redColor];
[cell.contentView addSubview:viewLeft];
UIView *viewRight = [[UIView alloc] initWithFrame:CGRectMake(310, 0, 10, heightOfTheCell)];
viewRight.backgroundColor = [UIColor redColor];
[cell.contentView addSubview:viewRight];
这样你就可以有圆角了:
[cell.layer setCornerRadius: 5];
[cell.layer setMasksToBounds:YES];
[cell.layer setBorderWidth:2.0f]
CGColorRef colorRed = [[UIColor redColor] CGColor];
[cell.layer setBorderColor:colorRed];
【讨论】:
我现在唯一关心的..如果我想让单元格有圆角怎么办?我将无法看到它们,因为视图会隐藏它 @Dejel 我忘了告诉你圆角必须添加 QuartzCore 框架 我想将圆角添加到白色背景中,而不是添加到红色背景中 @Dejel 你好,我也遇到了和你一样的问题,你解决了吗?请 如果你的宽度不再是 320 像素怎么办?您将需要相应地手动重新计算宽度、角半径和边框宽度。有没有办法在 NSLayoutConstraint 或其他方法中做?以上是关于UITableViewCell 的左右边距的主要内容,如果未能解决你的问题,请参考以下文章
自动布局 - 带有 ImageView 的 UITableViewCell - 边距?
UITableViewCell:如何在视网膜显示上给内置的 imageView 一个边距