setBackgroundImage forBarMetrics размер изображения? - PullRequest
8 голосов
/ 23 сентября 2011

Я новичок в программировании на iOS и создаю свое первое приложение. Я пытался использовать следующий код для изменения фонового изображения панели навигации (это использует новый метод iOS 5):

[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"gradientBackgroundPlain.png"] forBarMetrics: UIBarMetricsDefault];

Работает нормально, но мое изображение размером 640 x 88 и выглядит слишком большим для панели. Как будто система не хочет масштабировать его, или мне нужно сделать это вручную? Если я масштабирую изображение и создаю меньшее, оно выглядит пиксельным на дисплее сетчатки.

Есть мысли по этому поводу?

Любая помощь или ответ будет оценен.

Спасибо

Jorge .-

1 Ответ

18 голосов
/ 23 сентября 2011

Ваше изображение GradientBackgroundPlain.png должно быть 320x44, и создайте второе изображение с именем grabBackgroundPlain@2x.png размером 640x88. Включите изображение @ 2x в свой комплект, но продолжайте указывать градиентBackgroundPlain.png в качестве имени изображения. Платформа автоматически выбирает правильный размер изображения для использования в зависимости от того, присутствует ли дисплей сетчатки или нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...