任何设备的故事板安全区域错误/固定宽度
Posted
技术标签:
【中文标题】任何设备的故事板安全区域错误/固定宽度【英文标题】:Storyboard Safe Area wrong/fixed width for any device 【发布时间】:2018-01-22 19:22:59 【问题描述】:在情节提要中的视图控制器中对视图进行了一些重新排列后,该特定视图控制器中的安全区域出现了错误。对于任何设备,我选择安全区域都不会更新其框架宽度。
在下面的 gif 中,我在文档大纲中选择了安全区域来说明这一点。
在设备中运行时,安全区域按预期工作。所以这是一个 Interface Builder 特定的问题。执行 Cmd+Shift+K 清理和删除派生数据不起作用。
那么,除了在新的视图控制器中重新创建它之外,是否有一种已知的方法来拯救该视图控制器?
【问题讨论】:
我也遇到同样的问题,你找到解决办法了吗? 和我一样的问题。我还没有找到解决方法。 对我来说,较大的 iPad 尺寸可以正常工作。不是我想要的,但至少故事板中的布局看起来不错。 XCode 12.4 - 这个错误仍然存在。 XCode - 只是充满了错误的筛选......只是对它的质量绝望...... 【参考方案1】:我最近遇到了同样的问题。 我解决问题的方法是在故事板导航器中选择了“安全区域”。
之后我使用了约束控件并选择重置为建议的约束。
【讨论】:
【参考方案2】:如果 UIStackView 包含至少一个多行 UILabel 而没有明确的首选宽度,则会发生此错误。我没有发现在所有情况下都能成功的简单解决方法。
【讨论】:
【参考方案3】:以下是如何调试这些问题的提示:关闭场景中各个视图上的“已安装”复选框,直到问题消失。通过消除过程,您可以确定导致问题的控制或约束。
【讨论】:
以上是关于任何设备的故事板安全区域错误/固定宽度的主要内容,如果未能解决你的问题,请参考以下文章
故事板上的 Xcode 9 和 9.1 选择的设备会影响部署设备上的视图宽度
为啥 UITableViewCell.layoutSubviews() 的 frame.width 为 600(通用故事板宽度)而不是 320(特定 iPhone 设备)?