Большинство из этих решений настолько излишни. Все, что вам нужно сделать, это [[UIDevice currentDevice].systemVersion intValue]
. Это автоматически удаляет десятичную дробь, поэтому нет необходимости разбивать строку.
Так что вы можете просто проверить это как:
if ([[UIDevice currentDevice].systemVersion intValue] >= 8) {
// iOS 8.0 and above
} else {
// Anything less than iOS 8.0
}
Вы также можете определить макрос с помощью этого кода:
#define IOS_VERSION [[UIDevice currentDevice].systemVersion intValue];
или даже включите ваш чек:
#define IOS_8PLUS ([[UIDevice currentDevice].systemVersion intValue] >= 8)
Тогда вам просто нужно сделать:
if (IOS_8PLUS) {
// iOS 8.0 and above
} else {
// Anything less than iOS 8.0
}