Я помещаю изображение play.png на свое представление. Когда представление первоначально загружается, iPhone 4 захватывает соответствующий файл [email protected], и он выглядит великолепно. Однако, когда я нажимаю кнопку воспроизведения, мой код заменяет его на файл pause.png. Затем, когда я нажимаю pause.png, чтобы вернуть play.png, он использует исходный файл play.png(а не версию @2x, как я думал, он будет автоматически ссылаться).
Это код, который я пытался использовать:
[button setImage:[UIImage imageNamed:@"play.png"] forState:UIControlStateNormal];
Итак, если я меняю файлы после загрузки исходного представления, нужно ли вручную указывать версию @2x внутри оператора IF? Если да, является ли UIScreen.scale лучшим атрибутом для этого?
В настоящее время я использую такой код:
if ([UIScreen mainScreen].scale > 1.0)
{
[button setImage:[UIImage imageNamed:@"[email protected]"] forState:UIControlStateNormal];
}
else
{
[button setImage:[UIImage imageNamed:@"play.png"] forState:UIControlStateNormal];
}
Он работает нормально, но с выражением IF в нем раздражает и кажется немного хрупким.
Заранее благодарим всех вас, умников.