检查iOS 7或更早版本的最佳方法?

我需要重新configuration基于我运行的iOS版本的一些用户界面,所以我需要一个检查iOS版本的好方法。 目前我正在这样做:

if ([[[UIDevice currentDevice] systemVersion] isEqualToString: @"7.0"]) { //do stuff } 

我宁愿不要硬编码这些string比较,并根据此做出决定。 有没有更好的方法来做到这一点?

我总是把这些保存在我的Constants.h文件中:

 #define IS_IPHONE5 (([[UIScreen mainScreen] bounds].size.height-568)?NO:YES) #define IS_OS_5_OR_LATER ([[[UIDevice currentDevice] systemVersion] floatValue] >= 5.0) #define IS_OS_6_OR_LATER ([[[UIDevice currentDevice] systemVersion] floatValue] >= 6.0) #define IS_OS_7_OR_LATER ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) #define IS_OS_8_OR_LATER ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0) #define IS_OS_9_OR_LATER ([[[UIDevice currentDevice] systemVersion] floatValue] >= 9.0) 

虽然我会一直比较喜欢上面的macros,为了完成接受的答案,这里是苹果认可的方式:

 if (NSFoundationVersionNumber > NSFoundationVersionNumber_iOS_6_1) { // do stuff for iOS 7 and newer } else { // do stuff for older versions than iOS 7 } 
 if (NSFoundationVersionNumber > NSFoundationVersionNumber_iOS_6_1) { // do stuff for iOS 7 and newer } else { // do stuff for older versions than iOS 7 }