iOS 5 или iOS 4
Другой способ определения версии - использовать сообщение respondsToSelector:
на объектах.Преимущество по сравнению с методом version
заключается в том, что вам не нужно знать, какими будут следующие версии iOS для поддержки вашего приложения.(Что, если, например, появится новая версия 5.0.2? Ваше приложение должно знать, что строка "5.0.2" новее, чем "5.0"? Я согласен, что это не будет сложно для кода, но с использованием respondsToSelector:
гораздо удобнее)
iPhone / iPod Touch или iPad
Мой обычный способ кодирования универсального приложения (например, iPhone и iPad) - определить базовую реализацию моегопользовательские классы UIViewController, а затем реализовать его версию HD, наследуя поведение по умолчанию, но настраивая его для iPad (переопределение методов работает хорошо, но шаблон делегата может быть лучше: вы получаете предупреждения компиляции, если забыли реализовать методы).
Если вы используете другой файл .xib в начале жизненного цикла приложения (это то, что вы получаете с помощью универсальных шаблонов, предоставляемых XCode), вы можете в конечном итоге определить классы только из Interface Builder, и вам не нужно будет реализовыватьлюбой тест выполнения в вашем коде, чтобы узнать, работаете ли вы на iPhone или iPad.