Я пытаюсь обнаружить метод внешнего вида iOS 6, выполнив respondsToSelector
в [UIBarButtonItem appearance]
. Тем не менее, он всегда возвращает NO
для меня, независимо от выбранного ящика:
// Should show NOPE in iOS 5, YEP in iOS 6. Shows NOPE always
NSLog(@"%@", [[UIBarButtonItem appearance] respondsToSelector:@selector(setBackgroundImage:forState:style:barMetrics:)] ? @"YEP" : @"NOPE");
// Should show YEP in both iOS 5 and iOS 6. Shows NOPE always
NSLog(@"%@", [[UIBarButtonItem appearance] respondsToSelector:@selector(setBackgroundImage:forState:barMetrics:)] ? @"YEP" : @"NOPE");
Фактически использование этих методов отлично работает в их соответствующих версиях iOS, но я не могу определить, какой из них доступен для меня. Итак, как правильно это сделать?