我在撰写本文时正在测试Xcode 9 beta 3.
在查看故事板时,我收到一个警告列表,表明在其他语言/地区,我的固定约束会造成问题.
该应用程序相当复杂,许多视图正在经历这些警告.
警告是:
Certain autolayout constraint combinations may result in an appropriate layout in the current development language but will pose issues in other languages and regions.
我知道该应用程序不会很快用于任何其他语言.
有什么方法可以关闭这个警告吗?这听起来很傻但我无法忍受看到我的所有观点都带有黄色的警告图标并计入顶部(110警告!)
这里有另一个问题,解决了类似的问题,但在这种情况下,Xcode的行为是正确的,只是烦人.
然而,在我的情况下,我认为它实际上是一个错误:
该标签可以有无限数量的行,因此它永远不会被剪裁,文本将会破坏.
它适用于每个本地化:
我希望标签居中,我希望文本距离边距至少20像素,因此我为前导和尾随设置了固定约束.Xcode希望我将其中一个更改为"大于或等于"约束,但在这种情况下,文本将不会完全居中(我尝试过).
我想要的只是中心文本,它不会太靠近边距,但现在我无法在不触发警告的情况下完成.
有想法该怎么解决这个吗?它真的是一个错误,还是我做错了什么?
编辑:这是显示错误的屏幕截图.约束不是直接在视图控制器中,而是在我用作表视图的背景的子视图中.如果我删除这些限制,警告就会消失; 如果我把它们添加回去,它会再次出现.我在一个新项目中试过这个并且无法重现它,我不知道它为什么会在这里发生.
编辑:
这是另一个例子.当右边约束设置为"大于或等于"时,所有的好:
一旦我将它设置为"相等",繁荣:
Trailing(Leading) constraint is missing, which may cause overlapping with other views
Run Code Online (Sandbox Code Playgroud)
我的故事板:(只需输入2个标签及其约束)
避免这些警告的最佳方法是什么?