4

Can somebody tell me how to use @compatibility_alias to take a class, for example, UIActivityViewController, that is new to iOS 6, and use @compatibility_alias to make it work on iOS 5 and iOS 4. Please be specific and say where to put the code, and how to use it.

4

1 回答 1

9

它只是方法名称的别名,仅此而已。

它是 Objective-C 编译器的一个特性,而不是运行时的特性

查看 NSHipster,我们看到:
@compatibility_alias:允许现有类使用不同的名称进行别名。
这允许人们编写自己的当前 SDK 中不可用的类的实现,并将名称“别名”为较新 sdk 中的类的名称。因此,关键是编写或找到另一个具有与另一个不可用类相同的方法和行为的类。

这里没有灵丹妙药。

顺便说一句:我过去必须在邮局排队,并且有一个标语上写着:“如果它看起来不错,它可能是真的”,这适用于这里。

请参阅NSHipster,搜索@compatibility_alias.

于 2013-01-01T02:48:25.323 回答