我正在使用UIActivityViewController
在某些iOS应用中显示共享表。 iOS 7引入了一种新类型UIActivity
:UIActivityTypeAirDrop
。
这在UIActivity.h
文件中声明为extern字符串...基本上我试图从我的共享表中排除空投类型,这一切都运行正常,但是这个代码集需要向后兼容以前的iOS版本。
我知道要检查一个我可以使用respondsToSelector:
的方法,但有没有类似的方法可以用来检查字符串是否已声明,或者我应该使用系统版本? (这绝不是一个正常的好方法)
答案 0 :(得分:9)
UIActivityTypeAirDrop
是一个NSString常量,它本质上是一个指针,因此您可以检查该指针是否为NULL。如果不是,则存在此活动类型,您可以将其排除。否则就什么都不做。
if (&UIActivityTypeAirDrop != NULL) {
activityViewController.excludedActivityTypes = @[UIActivityTypeAirDrop];
}