Как управлять фоновыми изображениями для iPhone 5?
Некоторые из моих приложений используют пользовательские изображения в качестве фона. Каков правильный способ проверить размер экрана для размещения правильного изображения?
Если это что-то вроде viewDidLoad:
if ([UIScreen mainScreen] == 2.0)
{
UIImage * backgroundImage = [UIImage imageNamed:@"[email protected]"];
backgroundImageView = [[UIImageView alloc] initWithImage:backgroundImage]];
}
else
{
UIImage * backgroundImage = [UIImage imageNamed:@"bgimage.png"];
backgroundImageView = [[UIImageView alloc] iniWithImage:backgroundImage]];
}
Любые советы/советы очень ценятся!
Спасибо!
Ответы
Ответ 1
Следующий код проверяет размер/границы экрана. Если на экране 586 точек (помните, что экран измеряется в точках из-за Retina), чем мы знаем, что это новый 4-дюймовый дисплей Retina.
if ([[UIScreen mainScreen] bounds].size.height == 568)
{
UIImage * backgroundImage = [UIImage imageNamed:@"[email protected]"];
backgroundImageView = [[UIImageView alloc] initWithImage:backgroundImage];
}
else
{
UIImage * backgroundImage = [UIImage imageNamed:@"bgimage.png"];
backgroundImageView = [[UIImageView alloc] initWithImage:backgroundImage];
}
Смотрите также iOS 6 apps - как бороться с размером экрана iPhone 5?
Ответ 2
Ответ Bryan выше работал у меня, за исключением того, что мне пришлось использовать
[self.bgImageView setImage:backgroundImage];
а не
backgroundImageView = [[UIImageView alloc] initWithImage:backgroundImage];
Правильное изображение отображается только в том случае, если я использую его.