为啥即使在我将约束设置为 0 后 UITableView 上仍有余量
Posted
技术标签:
【中文标题】为啥即使在我将约束设置为 0 后 UITableView 上仍有余量【英文标题】:Why there is still margin on UITableView even after I set constrain to 0为什么即使在我将约束设置为 0 后 UITableView 上仍有余量 【发布时间】:2015-05-08 13:41:13 【问题描述】:我刚买了一本书,正在学习用 Swift 编写 ios。我想创建一个像 snapchat 这样的表格视图列表:
然后我将 UITableView 的所有约束设置为0:
但是,表格的左边还有一个边距,为什么?
【问题讨论】:
可能重复***.com/questions/25762723/… 【参考方案1】:点击UITableView
后在界面生成器中搜索分隔符插入
并将其更改为自定义。现在您可以将 Left Inset 设置为 0
目标-C
在viewDidLoad
[tableView setSeparatorInset:UIEdgeInsetsZero];
在cellForRowAtIndexPath:
中添加以下代码
if ([cell respondsToSelector:@selector(preservesSuperviewLayoutMargins)])
cell.layoutMargins = UIEdgeInsetsZero;
cell.preservesSuperviewLayoutMargins = false;
斯威夫特
if ([UITableView instancesRespondToSelector:@selector(setLayoutMargins:)])
[[UITableView appearance] setLayoutMargins:UIEdgeInsetsZero];
[[UITableViewCell appearance] setLayoutMargins:UIEdgeInsetsZero];
[[UITableViewCell appearance] setPreservesSuperviewLayoutMargins:NO];
【讨论】:
【参考方案2】:正如@Ashish Kakkad 所指出的,这是关于SeparatorInsets
,我只是想在这里添加,您也可以在Storyboard 中设置它们,您不必在代码中执行此操作。
点击表格视图后在界面生成器中搜索分隔符插入
并将其更改为Custom
。现在您可以将左插图设置为0
【讨论】:
也许只是在您的答案中包含我的屏幕以及 Ashish 以供此页面的未来访问者使用? 好的。然后我会将您的答案添加到我的答案中。谢谢!但不要删除你的答案。 @NilsZiehn以上是关于为啥即使在我将约束设置为 0 后 UITableView 上仍有余量的主要内容,如果未能解决你的问题,请参考以下文章
Android 每次都会询问我要使用哪个应用程序,即使在我将我的应用程序设置为默认应用程序之后也是如此。为啥?
即使我将应用程序清单设置为纵向,为啥我的 Android 相机预览仍显示横向?
为啥 Interface Builder 不能为约束设置负倍数,即使 [NSLayoutConstraint constraintWithItem:] 可以?
在我将编译器设置设置为支持 c++11 后,我仍然收到错误“stoi”未声明。为啥? [复制]
当我将“translatesAutoresizingMaskIntoConstraints”设置为 true、ChangeSizesInRunTime 时,为啥会出现约束中断?