私は非常に奇妙な状況に対処しています。属性付き文字列を iOS アプリケーションに実装していますが、iOS 3.2 以降で使用できるという警告が表示されました。私はまだ iPhone で 3.1.3 をサポートしているので、CoreText を弱くリンクする必要があることはわかっていました。おそらく、それらを使用する前にコンパイル時に OS をチェックする必要があります。
フレームワークを弱くリンクしましたが、好奇心からクラスをそのまま使用し、3.1.3 デバイスで実行したところ...動作しました。ここで何が欠けているのか、なぜこれがクラッシュしないのか混乱しています。これは 3.1.3 デバイスであると 100% 確信していますが、 NSMutableAttributedString は 3.1.3 の隠しクラスなので、実際には object-c の動的な性質のために機能しますか?