我的目标是实现针对UIImagePickerController的3.x SDK版本的兼容性及其allows(Image)Editing
属性。
// SDK 2.0 to 3.0
myImagePickerController.allowsImageEditing = YES;
// SDK 3.1
myImagePickerController.allowsEditing = YES;
一些研究揭示了一些客观方法,但处理弃用方法的最佳做法是什么?
performSelector
或NSInvocation
#define
方法
任何其他推荐策略......
答案 0 :(得分:9)
NSString * key = @"allowsEditing";
if ([myImagePickerController respondsToSelector:@selector(setAllowsImageEditing:)]) {
key = @"allowsImageEditing";
}
[myImagePickerController setValue:[NSNumber numberWithBool:YES] forKey:key];
答案 1 :(得分:-1)
将它们包装在@try @catch
块中,以确保工作功能,无论是否弃用方法。