Uitableview iPhone 7 plus和其他iPhone的不同限制

Uitableview iPhone 7 plus和其他iPhone的不同限制,uitableview,autolayout,constraints,ios-autolayout,size-classes,Uitableview,Autolayout,Constraints,Ios Autolayout,Size Classes,我使用的UiTableView带有静态单元格和右细节表格视图单元格样式,我发现在所有iPhone上,除了iPhone 7 plus外,左标签的前导空间等于16,在iPhone 7 plus上,它等于20。 不同iPhone中相同手机的屏幕截图: 我需要创建带有标签的自定义单元格,标签必须具有相同的前导间距,我想我可以使用大小分类,但如果所有iPhone在纵向模式下都具有规则的高度和紧凑的宽度(应用程序仅使用纵向模式),该如何做呢。我知道这个问题可以通过编程来解决,但必须有某种方法通过inter

我使用的UiTableView带有静态单元格和右细节表格视图单元格样式,我发现在所有iPhone上,除了iPhone 7 plus外,左标签的前导空间等于16,在iPhone 7 plus上,它等于20。 不同iPhone中相同手机的屏幕截图:

我需要创建带有标签的自定义单元格,标签必须具有相同的前导间距,我想我可以使用大小分类,但如果所有iPhone在纵向模式下都具有规则的高度和紧凑的宽度(应用程序仅使用纵向模式),该如何做呢。我知道这个问题可以通过编程来解决,但必须有某种方法通过interface builder来解决。 iPhone 7 plus上我的自定义单元格和右细节样式单元格的屏幕截图(顶部我的自定义单元格的前导约束等于16,但7 plus的前导约束必须为20):


这是由于顶层视图的边距,系统将其设置为您描述的值。您可以覆盖视图的边距,使其在所有设备上都相同

感谢您的回答,我尝试了这个代码-cell.layoutMargins=UIEdgeInsets(顶部:0,左侧:16,底部:0,右侧:0),我发现它不能小于20。页边距是分层的,顶层视图有您不想要的页边距。我不在可以尝试的地方,但如果我没记错的话,您不能更改顶级页边距,但可以将PreserveSPerViewLayoutMargins设置为false。