iPhone - iPhone5 поддержка существующего приложения?
Должен ли я разместить отдельный xib Like 1 для iPhone5 и 1 для iPhone4 и меньше. Делать так кажется очень плохой практикой. Может ли кто-нибудь иметь представление об этом? Также iPhone5 Использование Autolayout? я не понимаю, как работает Autolayout.
5 ответов
Если основной проблемой является новый размер экрана, обязательно добавьте Default-568h@2x.png. Это изображение размером 640 × 1136 необходимо для того, чтобы приложение могло использовать полноэкранный режим iPhone 5.
Также используйте
[[UIScreen mainScreen] applicationFrame]
чтобы получить ширину и высоту текущего экрана. Не жестко код 320 ширина 480 высота.
CGRect aFrame = [[UIScreen mainScreen] applicationFrame];
width=aFrame.size.width; height=aFrame.size.height;
Смотрите видео WWDC 2012 на эту тему. Есть три 1-часовых видео, которые научили меня всему, что мне нужно было знать, чтобы перенести мои приложения в Auto-Layout.
Я нашел и помогу другим также: https://github.com/mindsnacks/UIImage-MSImageNamed568hSupport
используя это, мы можем загрузить изображение размером 568h для iPhone5, если оно есть, или загрузить нормальное изображение.
Пример:
#import "UIImage+MSImageNamed568hSupport.h"
.
.
IBimgViewBG.image=[UIImage ms_imageNamed568hSupport:[NSString stringWithFormat:@"sample.png"]];
.
.
Примечание: включите эти изображения в ваш проект
sample.png // for earlier versions
sample-568h.png // for iphone5
Я изменил свои приложения, чтобы включить автопоставку. Честно говоря, если бы я был более активным, я бы с самого начала разработал их с учетом новых размеров экрана - ошибку, которую я больше не совершу!
Как вы к этому подходите, зависит от того, как вы разработали свое оригинальное приложение.
Отдельные файлы XIB: да, это один из возможных способов.
autolayout: http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2
(Google первый удар).