我使用 UILabel 来显示带有 垂直对齐 的文本。我将文本显示为 逐个字符 垂直对齐。实际上它是一个与CABasicAnimation 对齐的移动文本。但我的问题是
- 每一行应该
显示一个字符 ,但是当我尝试将标签宽度拉伸(stretch)到
显示单个字符,某些字符被部分删除。看屏幕
xib 的截图(带有小文本的示例).. 或者尝试扩展帧大小,有些行显示单字符,有些显示双字符。
- 单词之间缺少空格。见截图。
如何用我的 xib 修复它?以编程方式回答也可以接受。
注意:此示例中使用的文本“一些长文本”。
Best Answer-推荐答案 strong>
您不需要垂直对齐。只需使 UILabel 更宽并在字符串的每个字符后输入一个\n 即可。
NSString *longString = @"This is a very very long string";
NSString *labelString = @"";
self.label.text = labelString;
self.label.numberOfLines = 500; //just put a big number or calculate something
for (int n=longString.length - 1; n > -1; --n) {
labelString = [NSString stringWithFormat"%@\n%@", [longString substringWithRange:NSMakeRange(n, 1)], labelString];
self.label.text = labelString;
}
关于ios - UILabel 垂直对齐缺少的空间,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/21752761/
|