gpt4 book ai didi

iOS - 使 UIImageView 调整大小以适应 UILabel 和 AutoLayout

转载 作者:可可西里 更新时间:2023-11-01 06:22:50 29 4
gpt4 key购买 nike

我已经有一段时间遇到这个问题了,这让我发疯:我有一个 UILabel,其中的文本可以动态更改,我有一个 UIImageView 应该作为文本的背景。我希望 UIImageView 调整自身大小以始终适合 UILabel 的文本。

enter image description here

“付费”可以变成“免费”,或者法语中的“付费”,后面的框应该总是调整大小。

使用 Storyboard ,我尝试添加一个 UIImageView 并在其上添加 UILabel,并将 UILabel 的约束设置为 UIImageView,但这最终会将 UILabel 的大小调整为 UIImageView 的大小。我无法为 UIImageView 设置固定的宽度或高度,因为它应该适应。

我的第二次尝试是制作一个 UIView,将其重新分类为 UIIimageView,将 UILabel 添加为 subview ,使 UIView 调整大小以适应 UILabel 并以编程方式添加图像,但再次没有成功。

正确的做法是什么?

最佳答案

对于第一种方法,我假设您将标签和 ImageView 设置为具有相同的垂直和水平中心以及相同的高度和宽度。问题是布局引擎假设图像的固有尺寸比标签更重要。要更改它,您需要更改 View 的拥抱优先级和压缩阻力。 enter image description here转到标签(图片)的尺寸检查并将拥抱优先级增加到所需。这将使它的高度和宽度成为它的固有高度和宽度。您还可以降低 ImageView 的压缩阻力,因此更适合缩小尺寸。

标签的约束:enter image description here

您可以更改顶部并引导将其放置在 View 中的适当位置。

ImageView 的约束:enter image description here

关于iOS - 使 UIImageView 调整大小以适应 UILabel 和 AutoLayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34240575/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com