iOS 7、Xcode 5
使用 UILabel,此代码可以工作(自动调整文本大小以适应):
self.testLabel.numberOfLines=0;
self.testLabel.lineBreakMode=NSLineBreakByWordWrapping;
self.testLabel.adjustsFontSizeToFitWidth=YES;
self.testLabel.minimumScaleFactor=0.1;
self.testLabel.textAlignment=NSTextAlignmentCenter;
[self.testLabel.font fontWithSize:100.0];
但是添加“setFont”行会导致它无法缩放字体以适应:
[self.testLabel setFont:[UIFont fontWithName:@"Helvetica Neue" size:62.0f]]; //THIS LINE CAUSES THE FONT SCALING TO FAIL
self.testLabel.numberOfLines=0;
self.testLabel.lineBreakMode=NSLineBreakByWordWrapping;
self.testLabel.adjustsFontSizeToFitWidth=YES;
self.testLabel.minimumScaleFactor=0.1;
self.testLabel.textAlignment=NSTextAlignmentCenter;
[self.testLabel.font fontWithSize:100.0];
有谁知道这个问题的解决方法?
UILabel
如果您设置,将调整多行文本的字体大小;
-
numberOfLines
为非零值。
-
lineBreakMode
to NSLineBreakMode.ByTruncatingTail
.
例如,
_label.numberOfLines = 2
_label.lineBreakMode = NSLineBreakMode.ByTruncatingTail
_label.adjustsFontSizeToFitWidth = true
_label.minimumScaleFactor = 0.4
经过测试并确认可以使用;
- Xcode 7.1.1
- 装有 iOS 9.0.1 的 iPhone 6 设备
- iPhone 4S 模拟器与 iOS 8.4
- 配备 iOS 8.1 的 iPhone 4S 模拟器
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)