如何在同一行中拉伸多个标签

how can I stretch multiple labels in the same line

我的视图中有 4 个不同的 labels

蓝色标签是动态的,它们的值来自数据库。所以我想做一些事情,如果有任何国家的字符比这个 'London,It' 大,那么它应该拉伸他的位置以适应该区域,并且他们前面的单词或标签也应该根据向后标签,如果可能的话,如果行以某种方式结束,则移动到第二行。我在 TableView 单元格中这样做。我已经使用 sizeToFit 属性 但它没有给我所需的结果。

我有比使用多个标签更好的解决方案。您可以使用单个标签并将属性字符串设置为标签。您可以根据需要为字符串赋予任何属性。要将特定颜色设置为 perticula 字,您可以将颜色属性设置为该字符串。

最好的方法是制作一个横跨屏幕的标签,并将 lines 值设置为 0,如果文本太长,它会换行到第二行适合一条线。然后,您可以将那个标签的文本设置为如下内容,而不是将 4 个值放在单独的标签中:

let labelText = "From \(self.departureCity) To \(self.arrivalCity)"

其中 "self.departureCity" 和 "self.arrivalCity" 是您的数据库搜索值。

如果您真的希望城市值像您的示例中那样显示为蓝色,则此方法的唯一问题是 - 如果那是您真正想要的,您将不得不弄乱 attributedText 属性.

更好用,单个标签与合并的 NSString 并将属性字符串设置到标签。