【问题标题】:Noteworthy font introduced in iOS 4.3 and fallback to other font on < 4.3iOS 4.3 中引入了值得注意的字体,并在 < 4.3 上回退到其他字体
【发布时间】:2012-01-09 05:55:39
【问题描述】:

我正在创建一个旨在在 4.2+ ios 设备上运行的应用程序。出于美学原因,默认情况下,我想使用自 iOS 4.3 以来已取代 Chalkboard 字体的 Noteworthy 字体。 我假设在 iOS 4.2 中值得注意的字体不可用,如果用户正在运行此版本的系统,我必须回退到另一种字体?进行后备的最佳方法是什么? 我应该使用

(UIFont *)fontWithName:(NSString *)fontName size:(CGFloat)fontSize

并检查 nil 返回值?

我可以在我的 xib 文件中使用 noteworthy 还是会导致 4.2 设备崩溃?

【问题讨论】:

  • 我想我可能读错了,苹果可能只在 Notes 应用程序中替换了字体。这是有道理的,因为引入像这样的重大变化将是 Apple 的愚蠢举动。

标签: iphone objective-c ios cocoa-touch fonts


【解决方案1】:

你可以检查fontWithName:size:是否返回nil,或者你可以检查[UIFont familyNames]返回的数组。

我不确定你是否会在 4.2 上崩溃,但UILabel Class Reference 是这样说的:

属性的值只能设置为非零值;环境 此属性为 nil 会引发异常。

所以看起来很可能会发生崩溃。

【讨论】:

  • 我正在使用 UITextView 并且设置 nil 似乎不会使应用程序崩溃,但这是一个好点。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-03-14
  • 2012-05-21
  • 1970-01-01
  • 1970-01-01
  • 2015-01-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多