我正在处理一个非常奇怪的情况。我正在我的 iOS 应用程序中实现 Attributed Strings,并且我收到了警告,它们在 iOS 3.2 及更高版本中可用。因为我仍然支持 iPhone 上的 3.1.3,所以我知道我必须弱链接 CoreText,并且可能在使用它们之前进行一些编译时操作系统检查。
我弱链接了框架,但出于好奇,我只是按原样使用该类并在 3.1.3 设备上运行它......它可以工作。我在这里错过了什么,我很困惑为什么这不会崩溃。我 100% 确定这是 3.1.3 设备,但 NSMutableAttributedString 是 3.1.3 上的隐藏类,因此实际上确实可以工作,因为 Objective-c 的动态特性?