gpt4 book ai didi

objective-c - uilabel 尾部截断

转载 作者:可可西里 更新时间:2023-11-01 03:39:30 25 4
gpt4 key购买 nike

我正在使用 objective c 开发 ios 应用程序,我遇到了 uilabel 的问题,我需要一些帮助。基本上我有一个标签,可以改变大小以适应它将显示的文本,但它有一个可能的最大高度。标签本身始终具有固定宽度。我已打开 UILineBreakModeWordWrap 和 UILineBreakModeTailTruncation 以使文本适合并截断,但这会导致文本在只剩下 1 个单词时过早截断尾部。而不是在仍有空间时将其移动到下一行,而是将其截断。

self.frame = CGRectMake(self.frame.origin.x, self.frame.origin.y, fixedWidth, 0);
self.lineBreakMode = UILineBreakModeWordWrap | UILineBreakModeTailTruncation;
self.numberOfLines = 0;
[self sizeToFit];

是否可以找到 uilabel 实际截断文本的时间,以便我可以检查标签高度并在仍有空间时添加它?当有空间时,我总是尝试在高度上添加一条额外的线,这避免了早期截断,但随后我留下了所有标签的大小不一致。对此有任何想法都非常感谢

最佳答案

lineBreakMode 是一个开关。它可以是或者(对于 iOS6+)NSLineBreakByWordWrappingNSLineBreakByTruncatingTail 但不能同时是。

但是,为了回答您的问题,您可以使用 NSString+UIKit 中的类扩展找到一些文本的大小。 .找到大小后,您可以适本地更新 UILabel 的框架。

关于objective-c - uilabel 尾部截断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8985520/

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