我的视图控制器有一个UILabel。它向用户显示美元金额。我有一个默认大小,我喜欢显示的美元金额,如下所示
当金额过大时,某些文字会替换为" ..."
我想调整UILabel的文本(使其变小),使文本的磅值足以使点不出现。我能做些快速数学来完成这项工作吗?
答案 0 :(得分:1)
使用此:
UILabel * label = // your label
// update from @rmaddy and @z s
label.adjustsFontSizeToFitWidth = YES;
label.minimumScaleFactor = 0.5;
这意味着在截断之前,您将允许文本缩小到其大小的一半。相应调整。
如果您在iOS 7之前的环境中工作,也可以使用:
UILabel * label;
label.minimumFontSize = 14;
设置特定的最小字体大小;但是,自iOS 7以来,这已被弃用
答案 1 :(得分:1)
您无需进行数学计算,系统提供的API可以为您完成。在Interface Builder中,将标签的自动收缩设置为最小比例因子0.7(或任何适合您需要的值)。现在文本将根据需要缩小。
答案 2 :(得分:1)
label.adjustsFontSizeToFitWidth = YES;
label.numberOfLines = 1;