Я использую макросы, чтобы различать версии, но я не могу заставить его работать правильно. Я использовал:
#ifdef _IPHONE_4_0
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
#else
[[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];
#endif
а также
#if __IPHONE_OS_VERSION_MAX_ALLOWED < _IPHONE_4_0
[[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];
#else
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
#endif
а также
#if defined(__IPHONE_4_0)
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
#else
[[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];
#endif
Какой бы версией я не пользовался - всегда вызывается только одна из строк. И всегда определяется __IPHONE_4_0. Любые идеи?
С уважением, Дмитрий М.