У меня есть часть типа слайд-шоу AIR Mobile для iOS, над которой я работаю. Существует четыре страницы, которые пользователь может прокрутить. Каждая страница содержит PNG (размером 1 МБ, даже после сжатия), загружаемую с использованием класса Bitmap
и двух TextField
. Когда я прокручиваю их (используя специальную структуру прокрутки, которая работает без каких-либо проблем во всем приложении), приложение кэширует каждый из изображений PNG в виде растрового изображения, когда они выходят на экран, и выгружая их, когда они покидают экран после (скорее всего, следующий GC, хотя он кажется менее случайным, чем GC).Растровые изображения, которые кэшируются как растровые изображения
Акт кеширования PNG невероятно медленный на iOS, особенно когда это происходит, когда происходит другое действие (например, прокрутка). Это приводит к задержке ~ 1 с при прокрутке, что, очевидно, неприемлемо. Есть ли способ: a) предотвратить кеширование или b) хранить кеширование дольше/неопределенно до тех пор, пока сами изображения не будут иметь доступ к GC?
Я проверил тройной код и ничего не установлен в cacheAsBitmap. Кроме того, я использовал Adobe Scout, чтобы точно определить, что вызывало это мгновенное замораживание, и это определенно связано с кэшированием изображений. Я также устранил любые преобразования или шкалы или фильтры или что-нибудь, что может включить cacheAsBitmap для работы, и результаты остаются неизменными.
Поддерживает ли этот механизм прокрутки кэширование своего содержимого в виде растрового изображения? По крайней мере во время прокрутки. – Vesper
@Vesper Это было изначально, но оно было удалено, потому что оно было слишком медленным на мобильных устройствах, если вы сделали это именно так. –