首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ScrollView中的UILabel sizeToFit

ScrollView中的UILabel sizeToFit
EN

Stack Overflow用户
提问于 2016-05-31 06:02:56
回答 3查看 171关注 0票数 0

我在ScrollView中发现了UILabel的奇怪行为。我将动态文本分配给UILabel并使用sizeToFit,我可以记录新的大小,在分配文本后似乎可以正确地更改,但我看不到更改后的大小在模拟器和真实设备中都有反映。这是分配文本之前和之后的日志

代码语言:javascript
复制
--txt Frame {{15, 325}, {291, 36}}
--txt Frame1 {{15, 296}, {291, 446.5}}

正如你所看到的,大小(高度)发生了变化,尽管我没有看到设备和模拟器上的变化。请帮帮忙。

EN

回答 3

Stack Overflow用户

发布于 2016-05-31 08:45:30

尝试将此代码添加到sizeToFit()之后

代码语言:javascript
复制
    self.view.setNeedsLayout()
    self.view.layoutIfNeeded()

override func viewWillLayoutSubviews() { self.myLabel.layoutIfNeeded() }

票数 0
EN

Stack Overflow用户

发布于 2016-05-31 12:43:09

是否在使用sizeToFit方法之前设置了该标签的numberOfLines属性。

这也可能是导致问题的原因。

可能是标签框被更改了,但标签的numberOfLines属性设置为1,因此它只显示1行。

在使用sizeToFit方法之前,尝试设置行数属性,如

代码语言:javascript
复制
label.numberOfLines = 0;
[label sizeToFit];

这将为标签中任意数量的行设置所有文本。希望能对你有所帮助。

票数 0
EN

Stack Overflow用户

发布于 2016-06-09 17:36:56

在尝试了不同的方法后,我自己手动扩展了IB中contentView的高度。这不是最优雅的解决方案,但目前它是可行的:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37534130

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档