在iOS 13上,在“显示”系统字体和“文本”系统字体之间进行选择

时间:2019-12-05 14:08:42

标签: fonts ios13 uifont system-font

我熟悉新的Apple准则,即名称不再可以访问系统字体,而只能使用系统API。除了这一新要求之外,SF显示和文本字体似乎已合并为一种字体。我正在使用的应用程序具有用户内容,过去的用户可以自由使用任何大小的SF Display或SF Text,我们希望仍然支持此行为。这似乎不再可能。一些代码:

    UIFont *fontDisplay = [UIFont systemFontOfSize:10];
    UIFont *fontText = [UIFont systemFontOfSize:20];
    NSLog(@"display font %@ and %@", fontDisplay.fontName, fontDisplay.familyName);
    NSLog(@"text font %@ and %@", fontText.fontName, fontText.familyName);

在ios12上,我们得到两种不同的字体:

display font .SFUIText and .SF UI Text
text font .SFUIDisplay and .SF UI Display

在ios13上,我们得到一种字体:

display font .SFUI-Regular and .AppleSystemUIFont
text font .SFUI-Regular and .AppleSystemUIFont

在ios12上,我们过去经常可以将“ UIFont fontWithSize”与fontDisplay和fontText一起使用,以获取Display的小版本或Text的大版本以支持作者创建的内容。在ios 13上,这不再可能。

有人知道这种新行为有任何解决方法吗?

0 个答案:

没有答案