我正在设计一个UITableViewCell,它有2个图像和1个标签。我正在使用Xcode 9.2并使用Autolayout设计单元格。
我面临的奇怪之处在于:当我尝试通过点击Xcode底部列出的设备来测试不同屏幕尺寸的UI设计时,右侧的UILabel会改变其位置。但尾随约束的值仍然相同。
我发布了Xcode的截图以便更好地理解
iPhone X的屏幕截图:
iPhone SE的屏幕截图:
iPhone 8 plus的屏幕截图:
正如您在附带的屏幕截图中看到的那样,尾随约束的常量是相同的按钮imageView已经改变了它对不同屏幕尺寸的位置。
我尝试过创建新的故事板,新的ViewController,新的一切但问题是一样的。此外,我注意到该问题仅适用于TableView。因为我尝试创建一个新的viewController并在其上添加了3个标签,并具有相同的UITableViewCell约束。标签并没有改变他们对不同iPhone的位置。
我试图谷歌这个问题,但似乎没有人面对这个问题。
如果有人对此问题有任何建议,请在此处回答。任何帮助将不胜感激。
更新: 以下是设备的屏幕截图:
答案 0 :(得分:1)
这不是错误,而是故事板布局呈现问题。当您在不同设备之间切换时,接口构建器会更改其大小(来自View as
面板)。
如果UITableViewCell
,则不会根据设备大小(宽度)更改其大小(宽度)。
您的问题的答案:您需要根据界面构建器大小更新/重置UITableViewCell
大小。