删除 UITableViewCell 上不需要的左缩进

Posted

技术标签:

【中文标题】删除 UITableViewCell 上不需要的左缩进【英文标题】:Removing undesired left indent on UITableViewCell 【发布时间】:2016-12-28 04:34:27 【问题描述】:

我的主 UIViewController 中有一个表格视图,它有一个不可编辑的原型单元格。我正在尝试从表格视图单元格中删除左缩进。无论我使用什么方法,缩进都不会消失。

这是我尝试过的:

在表格视图中:在 Interface Builder > Attributes Inspector 中,我将 Separator Inset 设置为 Custom,左 inset 为 0。

在表格视图单元格上:在 Interface Builder > Attributes Inspector 中,我将缩进级别和宽度设置为 0。我还将分隔符更改为自定义,左侧为 0。

我还在代码中尝试了以下内容:

myTable.layoutMargins = UIEdgeInsets.zero
myTable.separatorInset = UIEdgeInsets.zero

这个在 cellForRowAt:indexPath 内部

cell.indentationLevel = 0
cell.indentationWidth = 0
cell.layoutMargins = UIEdgeInsets.zero
return cell

这是发生的情况的屏幕截图:

我需要所有的“Hello's”与红色部分标题文本左对齐。

如何删除内容的左缩进?

谢谢。

【问题讨论】:

【参考方案1】:

您是否尝试过使用带有标签且距左边缘所需距离的自定义单元格?

【讨论】:

这很好用。我头晕目眩,试图杀死默认表格单元格上的左缩进......我需要做的就是继承 UITableViewCell,创建我的自定义标签,并将其注册到 cellForRow 中。谢谢! 很高兴我能帮上忙:D【参考方案2】:

我确定 layoutMargins 是 UITableViewCell 缩进的原因。但我认为你不能改变 layoutMargins。我几乎不使用 UITableViewCell 的 textLabel。可以参考Setting layoutMargins of UIView doesn't work。

【讨论】:

【参考方案3】:

试试这个 -

helloLabel.textAlignment = .Left
cell.addSubview(helloLabel)

【讨论】:

以上是关于删除 UITableViewCell 上不需要的左缩进的主要内容,如果未能解决你的问题,请参考以下文章

修复触摸在 UITableViewCell 内的 UILabel 上不起作用?

UITableViewCell 高度自动布局在 iOS 10 上不起作用

错误:需要左值作为赋值的左操作数,我收到此错误啥是左值和右值以及如何删除此错误

删除重复的左外连接

如何从 UITableViewCell 中删除按钮?

删除其中包含 IBOutlets 的 UITableViewCell