如何根据文本宽度调整UILabel宽度?

时间:2019-06-08 20:07:01

标签: swift xcode

我正在制作待办事项清单应用程序。在一个TableViewController中,我有一个stackview(宽度374),其中包含两个标签:"name""*"。它合并为"Name*"。但是,我在Xcode中看到警告,说“ "*"的宽度和水平位置不明确,而"name"的宽度不明确。 另外,我可以看到这两个标签之间有一条红线,并且在标签"*"之后有很大的空隙。我想我可以通过根据文本调整标签宽度来解决此问题,从而使stackview也变得更小。

是否可以在Xcode中调整UIlabel的宽度。我尝试了很多方法,但是都没有用。

1 个答案:

答案 0 :(得分:0)

  

我有一个stackview(宽度374),其中包含两个标签:“名称”和“ *”

那是你的问题。您具有固定宽度的堆栈视图。我假设您使用默认的分发属性(即fill)。这会产生歧义,因为此分布值将尝试为每个排列的子视图(即两个标签中的每个标签)赋予其固有内容的宽度(即文本的宽度;您真正想要的)。但是,您还可以将堆栈视图设置为固定宽度(374)。因此,它不知道要“拉伸”哪个标签来填充空格(即内容具有优先权)。

因此,您说的是要调整堆栈视图的大小以包装标签。 您只需删除该固定宽度限制(374)

或者,为简单起见,您只能使用一个标签,并像Matt所说的那样设置内容。