gpt4 book ai didi

ios - 当我设置文本时调用哪个 UILabel 方法,它会自行调整大小以适应?

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:26:02 25 4
gpt4 key购买 nike

我有一个 UILabel,它是在 Universal Storyboard中创建的,我已经为它的位置 OTHER THAN WIDTH 提到了所有必需的约束。所以它根据文本集调整自己的大小。极好的!正是我想要的。

问题从这里开始:它的背景色为绿色,但这种颜色紧紧包裹着我的文字。因此,我相信将它扩大一点可以帮助我。但为此,我需要知道调用了我的 UILabel 子类的哪个方法。这样我就可以覆盖并添加 10 点的额外宽度。

底线:在我为标签分配文本后,调用哪个 UILabel 方法自动调整标签大小?

目前的样子:

enter image description here

最佳答案

不幸的是,我们没有可以在 UILabel 上设置的任何 contentEdgeInsets 属性(就像我们在 UIButton 上设置的那样)。如果您希望自动布局继续自行限制高度和宽度,您可以创建 UILabel 的子类并覆盖 intrinsicContentSizesizeThatFits实现你想要的。

所以,像这样:

- (CGSize) intrinsicContentSize
{
return [self addHorizontalPadding:[super intrinsicContentSize]];
}

- (CGSize)sizeThatFits:(CGSize)size
{
return [self addHorizontalPadding:[super intrinsicContentSize]];
}

- (CGSize)addHorizontalPadding:(CGSize)size
{
return CGSizeMake(size.width + (2*kSomeHorizontalPaddingValue), size.height);
}

请注意,这仅涉及水平填充,但显然也可以修改以添加垂直填充。

关于ios - 当我设置文本时调用哪个 UILabel 方法,它会自行调整大小以适应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30615458/

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