У меня есть пара UIViews с UIImageViews на них. Когда я отображаю представление в первый раз , перед его отображением наблюдается заметная задержка (0,5 секунды или около того). При повторном показе все работает.
Мне удалось обойти это, добавив все виды и удалив их. Как это:
[self performSelectorOnMainThread:@selector(addAndRemoveAllViews)
withObject:nil
waitUntilDone:NO];
Функция перебирает все представления и [addSubview:view]
, за которыми следует [view removeFromSuperview]
. Похоже, это приводит к загрузке изображений, когда они не отображаются.
Вопросы:
- Все это похоже на обходной путь для меня. Есть ли лучший подход для обработки таких вещей?
- Можно ли получить обратный вызов или что-то еще, когда он будет завершен? Я хочу запустить анимацию, когда закончите.
Обновление:
Изображения создаются из NSData
, например:
[[UIImageView alloc] initWithImage:[UIImage imageWithData:rawData]];