iOS5 UIButton я должен попытаться оптимизировать фоновое изображение? - PullRequest
0 голосов
/ 06 ноября 2011

Я получил до 16 кнопок на одном контроллере UIViewController.Каждая кнопка имеет собственный стиль с фоновым изображением PNG размером 160x160 пикселей (уменьшено для отображения на сетчатке).Сами кнопки 40х40, 60х60 или 80х80.Я ожидаю, что контроллер вида будет жить очень долго.

Есть только 3 типа изображений, которые я хочу назначить этим кнопкам (красный, желтый, зеленый).План состоит в том, чтобы переназначить изображения для обозначения переходов между состояниями.В настоящее время мой пользовательский интерфейс встроен в конструктор интерфейсов. Достаточно ли умен Интерфейсный Разработчик, чтобы понять, что я пытаюсь повторно использовать одно и то же изображение для этих кнопок, или он выделит 16 отдельных изображений, по одному для каждой кнопки? Что-то говорит мне, что каждая кнопкаотдельный UILayer, который каким-то образом получает изображение.

Спасибо!

1 Ответ

2 голосов
/ 06 ноября 2011

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

- (void)awakeFromNib
{
    NSLog(@"TestButton %p - background image %p %@", self, self.currentBackgroundImage, self.currentBackgroundImage);
}

Установите свои кнопки на свой подкласс UIButton, запустите и проверьте вывод:

2011-11-06 13:36:41.877 tester[21909:f803] TestButton 0x68522a0 - background image <UIImage: 0xed2d630>
2011-11-06 13:36:41.878 tester[21909:f803] TestButton 0xed2f1e0 - background image <UIImage: 0xed2d630>
2011-11-06 13:36:41.879 tester[21909:f803] TestButton 0xed2f6a0 - background image <UIImage: 0xed2d630>
...