swift Xcode 7.3.1中UILabel顶部和底部的额外空间

y3bcpkx1  于 2023-03-22  发布在  Swift
关注(0)|答案(2)|浏览(127)

我现在在UILabel的顶部和底部获得了额外的空间,我把它的字体设置为24,但是它可以小到14(这是为了帮助文本适合在较小的手机上使用时,如4s)我有行数限制为7.除此之外,我没有任何约束,迫使它是一个特定的高度,我让Xcode决定,但我不明白为什么它增加了额外的空间。见图片的所有设置我。
UILabel属性

大小检查器约束

在Xcode中查看

iOS中的结果

我确实有一些代码是圆角和添加阴影的,但我不认为这会影响顶部和底部的间隙,因为这在代码运行之前就已经显示在Xcode中了。
作为解释,16的约束是使宽度与白色背景的宽度相匹配,而6的约束是调整UILabel周围绿色背景的大小。
编辑:添加完整约束列表

编辑2:添加XIB图像

bhmjp9jg

bhmjp9jg1#

尝试删除底部的约束,让UILabel为您决定高度。
使用UILabel时,您无法进行垂直对齐到顶部,此答案可以帮助您理解:https://stackoverflow.com/a/1054681/5109911

qhhrdooz

qhhrdooz2#

正如我在评论中提到的,iOS开发者14年和自动布局自从问世以来,苹果一直留下这个bug,它与最小尺寸或最小字体比例有关(无论您选择使用哪个)。在您的示例中,字体大小为24,最小值设置为14,因此,你会看到大约10/24的额外空间被划分在顶部和底部之间。我从来没有找到一种方法绕过这个问题,而且已经尝试了很多年。从字面上看,必须重建一切,并手动调整字体自己,并避免最小字体大小和规模。我记得一个滑稽的实验,使用聊天GPT找出解决方案,聊天GPT开始试图告诉我所有的事情我可能做错了,然后结束了说“你是对的,这可能是一个苹果的错误”.搞笑,它来到周围的真正理解:苹果并没有解决所有问题。

相关问题