iOS版本比較方法,ios版本方法
之前一直把版本號碼轉換為floatValue,但是最近在項目中又出現了float的問題,主要是
NSString表示為@"17.30",轉換為floatValue 值為17.299999,然後做了一些放大處理,導致不精確,就是精度少了1
所以都不敢在系統版本比較的過程中把值強制轉換為floatValue了。
/* * System Versioning Preprocessor Macros hovertree.com */#define SYSTEM_VERSION_EQUAL_TO(v)([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch]==NSOrderedSame)#define SYSTEM_VERSION_GREATER_THAN(v)([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch]==NSOrderedDescending)#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v)([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch]!=NSOrderedAscending)#define SYSTEM_VERSION_LESS_THAN(v)([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch]==NSOrderedAscending)#define SYSTEM_VERSION_LESS_THAN_OR_EQUAL_TO(v)([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch]!=NSOrderedDescending)/* * Usage 何問起 */if(SYSTEM_VERSION_LESS_THAN(@"4.0")){...}if(SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"3.1.1")){...}
推薦:http://www.cnblogs.com/roucheng/p/3528371.html