2012-09-26 4 views
1

У меня есть приложение в iPhone 4, работающее нормально. Теперь я хочу перенести его на 5. У меня есть startupviewcontroller для отображения заставки с xib; xib генерируется в Xcode 4.2, поэтому он имеет вид с разрешением 320 480 кадров и изображение, добавленное к нему с изображением. Теперь я хочу, чтобы все это работало и в iPhone 5. Для этого я изменил размер изображения до 640 * 1136, который добавляется к этой точке зрения изображения, чем используемый один из 640 * 960.And я добавилМиграция на iphone5 не работает?

if([[UIScreen mainScreen] bounds].size.height == 480) 
    { 
     [self.view setFrame:CGRectMake(0,0,320,480)]; 
    } 

    else 
    { 
     [self.view setFrame:CGRectMake(0,0,320,568)]; 
     backgroundimage.image=[UIImage imageNamed:@"[email protected]"]; 

     } 

не работает. Который дал мне пустое место внизу после изображения. Я также попробовал авторезистирующую маску. Это тоже не сработало.

enter image description here

Может кто-нибудь вытащить меня из этого роют?

ответ

1

Я предполагаю, что backgroundImage является UIImageView, который является подзором вида вашего контроллера, установленным в xib, чтобы быть в полном размере. Когда ваше приложение будет работать на iPhone 5, оно автоматически установит размер представления для вас, но оно не изменит размер подзапросов, если вы не установите маску авторазмера. См. Мой ответ this question, как это сделать.

2

В вашем коде есть 2 вещи, которые я бы уточнил: - убедитесь, что backgroundImage правильно подключен к наконечнику. - удалите ключевое слово @ 2x для изображения, которое вы извлекаете. [UIImage imageNamed: @ "Default-568h"]. Приложение @ 2x будет добавлено для получения нужного файла.

Кроме того, что у вас должно быть выполнено, у вас есть действующий стартовый образ запуска 4 дюйма (по умолчанию [email protected]).

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