我正在为 4 个 UILabel 设置约束,但它在 iphone 5s 中无法正常工作,并且在 6 和 6 plus 中正常显示。如何设置适当的约束?
它在 iphone 5s 的右侧。
第一个标签,我设置了 x 位置,然后设置了标签之间的空间。然后我从尾随空格设置了第四个标签 <=。但没有得到正确的结果。
我正在为 4 个 UILabel 设置约束,但它在 iphone 5s 中无法正常工作,并且在 6 和 6 plus 中正常显示。如何设置适当的约束?
它在 iphone 5s 的右侧。
第一个标签,我设置了 x 位置,然后设置了标签之间的空间。然后我从尾随空格设置了第四个标签 <=。但没有得到正确的结果。
由于您的目标似乎是显示带有一些链接的单行文本,因此您最好对所有文本使用单个视图。该支持链接有一些第三方替代品UILabel
,例如Nimbus和TTTAttributedLabel。或者,您可以将UITextView
实例配置为像标签一样工作(关闭滚动和编辑),并且可以启用超链接。
使用可以正确处理超链接的单个视图应该可以简化代码并消除约束问题,同时确保文本布局正确。例如,如果文本需要换行到下一行,那么使用单个视图来完成会容易得多。
Massimo Polimeni 的回答很好地涵盖了您提出的问题的答案:如果您想放置多个标签以使其文本对齐,请在标签之间使用基线约束。
选择所有标签,然后添加垂直中心约束:
所以现在你的标签应该对齐:
显然,仅在一个标签处添加 x 位置或边距约束以保持对齐。
让我知道这是否能解决您的问题:)
编辑 1:正如 Caleb 所说,我的建议只有在标签的字体大小相同时才有效。如果不是,您应该只使用基线约束。