ios 6.0版弃用的最小字体大小


92

我刚刚在iOS 6.0上升级到xcode 4.5,并且在我的XIB文件中的所有UILabel上都突出显示了一个警告,指出“ iOS 6.0版不建议使用最小字体大小”。有谁知道这是指什么以及如何解决它?

更新: 图像不再可用(位于https://skitch.com/hahmadi82/eyk51/cloud


1
@HoomanAhmadi:所有iOS开发人员都收到了该电子邮件。阅读底部的声明:“预发布软件...”
Rok Jarc 2012年

7
将自动收缩部分中的“最小字体大小”更改为“最小字体大小”。:p只是有同样的问题,并假设字体不会违反NDA,就直接出现在这里。看起来字体在升级中经历了一些更改。
erran 2012年

18
我提出了这个问题,因为它没有正确关闭。至少关闭的原因是错是错。“仅与较小的地理区域有关”。它适用于所有iOS开发人员。不是“不适用于全球范围内的互联网受众的极其狭窄的情况”。它适用于每个人。“这个问题不太可能帮助将来的访客”。这对我非常有用,并且可能对所有iOS开发人员同样有用。我了解NDA问题,但是只要取消NDA,这个问题就会站起来。
Jean-Denis Muys 2012年

9
伙计们,我第一次修好这个东西时,是手动做的,这是一种特殊的折磨。然后,我不得不合并一些更改,由于使用了Xcode beta,它使我获得了emacs作为合并工具,因此我保住了这一点并选择了较新版本的文件,因为我知道我会放弃这些更改,但随后我使用TextWrangler:文件是xml。只需替换:将autoshrinkMode =“ minimumFontSize”替换为autoshrinkMode =“ minimumFontScale”,然后将minimumFontSize =“ 10”替换为minimumFontScale =“ 0.5”。瞧
罗布

1
@LittleBobbyTables:如果人们可以很好地询问,那将是很棒的。像matheszabi的评论那样生气而发脾气的抱怨是说服我不要重提问题的好方法。
CA McCann

Answers:


47

minimumFontSize的属性UILabel从iOS 6.0开始不推荐使用。

的替代品minimumFontSizeminimumScaleFactor。如果您将分配minimumFontSize/defaultFontSizeminimumScaleFactor,则其工作方式与minimumFontSize相同。

代码如下-例如,字体大小为30.0,并且如果您希望最小字体大小为12.0

YOURLABEL.font= [UIFont fontWithName:@"FONT_NAME" size:30.0];
[YOURLABEL setMinimumScaleFactor:12.0/[UIFont labelFontSize]];


8

快速修复 ...此处最小字体大小为8.0

            CGFloat size = textLabel.font.pointSize;// font size of label text
            [textLabel setMinimumScaleFactor:8.0/size];

5

我的回答很晚,但可能会对您有帮助。由于每个人知道setMinimumFontSize已被弃用,因此其它方法代替setMinimumFontSize就是setAdjustFontToFitWidth这需要BOOL 例如

[yourLabel setAdjustsFontSizeToFitWidth:YES];
//or
yourLabel.adjustsFontSizeToFitWidth = YES;

3

我有类似的问题。快速解决方案是使用UILabel的MinimumScaleFactor属性。


3

对于Swift,请使用以下命令:

//set the number (ex. 8 to your desired minimum font size)
myLabel!.minimumScaleFactor = 8/myLabel!.font.pointSize;`

奇迹般有效!


1

进入finder并找到.storyboard文件或您的文件,.xib然后使用TextEdit打开。使用find查找字符串"autoshrinkMode"并将值替换"minimumFontSize""minimumFontScale"

奇怪的是,转换未写在更新脚本中...

还可以在上面的评论中将@Rob声明为相同的答案。他应该为此得到荣誉。


我的故事板文件中没有autoshrinkMode。
Timuçin

谢谢,这对我非常有用。@Tim您只需选择UILabel,然后在右侧实用程序面板中选中“标签”选项,然后选中这些选项,您将看到一个名为“自动收缩”的图标。 i.stack.imgur.com/H6YYJ.png
2013年

0

您可以在那儿使用最小比例因子或拖动标签并设置autoshrik->最小字体。

也许这可以帮助您。


0

是,minumumFontSize已弃用。

使用以下minimumScaleFactor:-

Obj.minimumScaleFactor= (floatValue);
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.