gpt4 book ai didi

ios - 多行 UILabel 高度,横向自动布局更高

转载 作者:行者123 更新时间:2023-12-01 18:14:32 27 4
gpt4 key购买 nike

请查看这个简单的动态多行示例 UILabel使用 Autolayout 应该会强制其 super View 增加高度。该示例在纵向上运行良好,而在横向上 UILabel高度增长太多。

我在 Storyboard 中设置了约束,标签的垂直压缩和拥抱优先级是1000, super View 是1。 View 之间的所有其他顶部,底部,前导和尾随约束都是标准的。

我用非常浅灰色的颜色为标签的背景着色,因此很明显标签的顶部和底部边距比纵向模式大得多。有人可以告诉我如何在横向上获得具有相同顶部和底部边距的标签吗?谢谢。

enter image description here

- (void)viewDidLoad
{
[super viewDidLoad];
self.myTextLabel.text = @"iPhone 6 rumoured to have larger display.";
}

- (IBAction)button:(UIButton *)sender
{
if (!self.flag) {
self.innerHeightConstraint.constant = 120.0;
self.myTextLabel.text = @"iPhone 6 rumoured to have larger, 1704 x 960 display. A new report indicates that Apple's testing it.";
self.flag = YES;
} else {
self.innerHeightConstraint.constant = 60.0;
self.myTextLabel.text = @"iPhone 6 rumoured to have larger display.";
self.flag = NO;
}
[self.view layoutIfNeeded];
}

最佳答案

我认为您正在使用多行标签和自动布局来解决特定问题。详细解释见Advanced Auto Layout Toolbox (多行文本的内在内容大小)。

快速修复是把它放在你的 View Controller 中:

- (void)viewDidLayoutSubviews
{
[super viewDidLayoutSubviews];
myLabel.preferredMaxLayoutWidth = myLabel.frame.size.width;
[self.view layoutIfNeeded];
}

尽管我建议在链接中描述的容器 View 解决方案中使用自定义标签类或覆盖 layoutSubviews。

关于ios - 多行 UILabel 高度,横向自动布局更高,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23662090/

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