Форум программистов, компьютерный форум CyberForum.ru

Оптимизация создания UIImageView - Objective-C

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.71
norge_goth
62 / 62 / 7
Регистрация: 27.01.2009
Сообщений: 279
29.12.2011, 14:37     Оптимизация создания UIImageView #1
Программа под iPhone/iPad, есть документ на котором картинки, картинки лежат в UIImageView, допустим картинок на данный момент 15, но их количество может изменятся (копирование/удаление), почитал "Drawing and Printing Guide for iOS" там есть такое насчет оптимизации
"Reuse table cells and views during scrolling: Creating new views during scrolling should be avoided at all costs. Taking the time to create new views reduces the amount of time available for updating the screen, which leads to uneven scrolling behavior."

хочу сделать что-то похожее, но с UIImageView, то есть думаю хранить очередь использованных UIImageView и когда требуется создать новую брать с очереди и заполнять картинкой (чтобы не создавать новую).

Вопрос - актуально это вообще делать? Если да то какое максимальное количество выставить для очереди, чтобы в памяти черезчур много не висело?
Для iPhone и iPad это количество будет разным и как его подобрать?
p.s: Убивать очередь думаю когда придет memory warning

Спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.12.2011, 14:37     Оптимизация создания UIImageView
Посмотрите здесь:

Оптимизация создания сайтов HTML, CSS
Joomla Время создания статьи при модификации даты создания…
Оптимизация создания 3х-мерного массива MathCAD
оптимизация C++ Builder
Вывод на экран UIImageView с непосредственно кодом
Objective-C Последовательность создания объектов
Оптимизация C++ WinAPI
Изменение времени создания файла на минус Х дней от текущей даты создания VBS
Оптимизация кода пакетного файла для создания бэкапов BAT
UIWebView + UIImageView
Swift -[UIImageView _isResizable]: unrecognized selector sent to instance 0x7be8e460'
PHP Оптимизация

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Splitter
 Аватар для Splitter
201 / 143 / 5
Регистрация: 13.01.2009
Сообщений: 554
29.12.2011, 16:26     Оптимизация создания UIImageView #2
до memory warning лучше вообще не доводить, это само по себе плохо, а ImageView вообще прибивать не нужно, у него есть метод для показа картинки

C
1
 [imageView setImage:[UIImage imageNamed:@"image.png"]]
в этом случае UIImage авторелизный, так что добавляйте сколько нужно
norge_goth
62 / 62 / 7
Регистрация: 27.01.2009
Сообщений: 279
30.12.2011, 03:00  [ТС]     Оптимизация создания UIImageView #3
Цитата Сообщение от Splitter Посмотреть сообщение
до memory warning лучше вообще не доводить, это само по себе плохо, а ImageView вообще прибивать не нужно, у него есть метод для показа картинки

C
1
 [imageView setImage:[UIImage imageNamed:@"image.png"]]
в этом случае UIImage авторелизный, так что добавляйте сколько нужно
Вы немного не поняли, у меня на view одновременно может быть много subview с картинками внутри, идея такова что объекты представленные этими subview's могут удалятся, так вот я думаю не удалять их, а просто сохранять где-то в очереди для последующего использования, то есть схема такова:

на форме показывается две UIImageView, юзер удаляет одну из них, наши действия: извлекаем этот UIImageView, удаляем картинку и запихиваем в очередь, далее - юзер создает новую картинку, наши действия: извлекаем с очереди ставим картинку и отображаем.

Так вот вопрос о том рационально ли это? и какой предел выставить для количества элементов в очереди для iPhone/iPad?
zulkis
 Аватар для zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
07.01.2012, 21:04     Оптимизация создания UIImageView #4
Цитата Сообщение от Splitter Посмотреть сообщение
C
1
[imageView setImage:[UIImage imageNamed:@"image.png"]]
в этом случае UIImage авторелизный, так что добавляйте сколько нужно
Но учтите, что imageNamed все же кеширует картинку, а это может ой как аукнуться, при использовании больших картинок.
Splitter
 Аватар для Splitter
201 / 143 / 5
Регистрация: 13.01.2009
Сообщений: 554
07.01.2012, 21:30     Оптимизация создания UIImageView #5
Цитата Сообщение от norge_goth Посмотреть сообщение
так вот я думаю не удалять их, а просто сохранять где-то в очереди для последующего использования,
ну дело Ваше конечно, но я бы не перегружал память такими очередями, это чревато, тем более что картинки - довольно ресурсоемкий объект
Yandex
Объявления
07.01.2012, 21:30     Оптимизация создания UIImageView
Ответ Создать тему
Опции темы

Текущее время: 15:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru