То же самое возможно для iPhone4 и iPhone5?
Можно ли как-то спроектировать свои классы для iPhone4 и iPhone5, используя один и тот же xib?
8 ответов
Да, вы можете использовать один и тот же XIB для дизайна iPhone 4 и iPhone 5 с помощью Auto-Layout.
Создайте приложение, используя iOS 6 в качестве базового SDK, и используйте функцию Auto Layout для создания экранов, которые можно масштабировать для всех типов экранов. Вам понадобится Xcode 4.5, чтобы сделать это.
Начните с Auto Layout здесь:
http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2
http://www.raywenderlich.com/20897/beginning-auto-layout-part-2-of-2
Добавьте изображение с именем Default-568h@2x.png. Это идентифицирует ваше приложение как поддерживающее метрики iPhone 5. А также вам нужно правильно настроить размеры ваших просмотров.
Ну, короткий ответ на ваш вопрос - ДА;
Лонг это:- Если вы используете XCode 4.5 и создаете универсальное приложение, файлы и классы NIB будут отлично работать для Iphone 4 и Iphone 5; Для вас важно знать версию SDK этих мобильных телефонов, а не их мобильную версию.
Другое дело, что размер iphone 5 немного больше, чем iphone 4, поэтому вам нужно соответствующим образом спроектировать. Пожалуйста, прочитайте мой ответ на вопрос о разрешении экрана Iphone 5 для лучшего понимания.
Также посмотрите на Как разрабатывать или переносить приложения для разрешения экрана iPhone 5? Ответьте за дополнительные разъяснения по разработке универсального приложения.
Да, это возможно,
просто уберите боковой угол и освободите объект, включив внутреннюю стрелку. поэтому он автоматически изменит размер в соответствии с экраном.
- но помните одну вещь: это будет работать только тогда, когда вы предоставите все стандартные или другие заставки.
Вы можете использовать функцию автоматического размещения, предоставляемую Apple. Для этого обратитесь к яблочному документу: - https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/AutolayoutPG/Introduction/Introduction.html
Пожалуйста, определите строку ниже и проверьте состояние устройства.
#define IS_IPHONE_5 ( fabs( ( double )[ [ UIScreen mainScreen ] bounds ].size.height - ( double )568 ) < DBL_EPSILON )
if (IS_IPHONE_5) {
btnBookmark.frame=CGRectMake(0, 460, 100, 70);
btnBookmark.frame=CGRectMake(150, 460, 100, 70);
}else{
btnBookmark.frame=CGRectMake(0, 360, 100, 70);
btnBookmark.frame=CGRectMake(150, 360, 100, 70);
}
Использование AutoAutoresizing
так что вы можете сделать приложение совместимым как с iOS 5, так и с iOS 6. Это легко, если ваш макет имеет минимальные зависимости. И это возможно для устранения проблем с такими компонентами, как UIToolBar
, Кнопки в iPhone 5.
Если вы хотите внести небольшие изменения (например, положение и размеры изображений, вставки содержимого для просмотра прокрутки...), вы можете использовать коды, чтобы различать iPhone 5 и iPhone 4/4, и внедрять свои коды в операторе if / else.
Использовать этот:
/questions/16839488/kak-opredelit-iphone-5-shirokoekrannyie-ustrojstva/16839493#16839493
определить тип iPhone.