当我在自定义的UITableViewCell中放置一个标签进行测试并使用约束使标签居中时,它最终根本就不会居中。
我宁愿用代码完成所有这些工作,但必须使用视觉设计器。我想念什么?
进一步描述ContentView似乎比屏幕宽度宽:
答案 0 :(得分:0)
查看您的图片,然后看到UITableViewCell已正确约束,它应该在中间。即使没有帮助边框(表明内容更宽),我也看到主窗口或其他子视图缺少一些约束。
我不知道您是使用Table视图还是以某种方式将单元格填充到滚动视图中,但是您应该检查滚动视图/表视图的所有4个侧面的约束,以确保它占据了所有空间。如果确定约束存在,则可以尝试设置与scrollview或content相同的宽度(如果使用tableview)。
此后,它应该创建相同的屏幕宽度约束。
答案 1 :(得分:0)
我认为您应该在标签中添加leading
和trailing
约束。那应该阻止他们扩散到边界之外。我也建议添加top
和bottom
约束,以根据标签的文本内容处理自动调整大小。
如果添加所有这四个约束,则不需要水平和垂直centre
约束。
答案 2 :(得分:0)
问题最终落在UITableView
和UITableViewCell
之外。嵌入表的视图控制器已启用auto layout
和use size classes
。为主机视图控制器禁用这些功能可以解决此问题。
我在设置UITableView
界限的代码行上放置断点后发现了问题。结果表明,其继承的父边界的宽度为600。