2014-01-28 2 views
0

Я разрабатываю универсальное приложение, где я дал фоновое изображение для UIView, используя следующий код.различные фоновые изображения для пейзажного и портретного вида

UIImageView *imgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"backImage.png"]; 

[self.view addSubview:imgView]; 
[self.view sendSubviewToBack:imgView]; 

Я создал следующие изображения и добавлены к проекту,

backImage.png

[email protected]

backImage-Portrait~ipad.png

[email protected]~ipad.png

backImage-Landscape~ipad.png

[email protected]~ipad.png

Но это, кажется, не принимать правильные изображения.

Он отлично работает, когда я запускаю приложение на iphone (я имею в виду, что он берет backImage.png и [email protected] соответственно), но когда я запускаю приложение на ipad, он не использует изображения ipad, он все еще использует изображения iphone. Не может кто-нибудь сказать, что должно быть не так.

Заранее спасибо.

+0

Что именно это делает? На каком устройстве вы работаете? Пожалуйста, поделитесь имиджем того, что происходит. – Popeye

+0

Он отлично работает, когда я запускаю приложение на iphone (я имею в виду, что он берет backImage.png и [email protected] соответственно), но когда я запускаю приложение на ipad, он не использует изображения ipad, он по-прежнему использует изображения iphone , –

+0

Ну, что нужно добавить к вам вопрос, тогда, пожалуйста. Как мы должны знать, что вы не говорите нам. Пожалуйста, предоставьте всю информацию – Popeye

ответ

0

Вам необходимо определить в своем коде, какое устройство используется, и в зависимости от этого выбрать подходящее изображение.

Смотрите здесь: iOS detect if user is on an iPad

0

Возможно, я ошибаюсь, но я не думаю, что UIImage будет знать, загружать ли «портрет» или «пейзаж» версию изображения, а тем более динамически менять их при повороте интерфейса. Я думаю, вы ожидаете гораздо больше магии, чем есть.

Эти соглашения работают с моментальным снимком запуска приложения, но я думаю, что это его масштаб?

Смежные вопросы