Intereting Posts
Как вызвать контекстное меню W / ResourceType (463): Ошибка получения записи в пакете 0 (ошибка -75) в действии Android Перетаскиваемый ящик с ручкой (вместо панели действий) поверх других приложений Модуль ядра не может найти файл прошивки на устройстве Android; Где это должно быть? Эффективное выполнение пакетного SQL-запроса на Android, для базы данных обновления CalendarView не показывает дни месяца Проведите половину страницы в ViewPager (из пакета совместимости) Как проверить состояние подключения устройства HDMI в Android? Является ли ссылка на веб-узел на Google Диске опасностью поэтапного отказа? Отключить уведомления в URI ContentProvider Выровняйте верхнюю часть представления в нижней части другого вида в RelativeLayout Как изменяется доступ к хранилищу на Android 6? Намерение профиля / канала приложения youtube Android.app.ServiceConnectionLeaked: Activity … MainActivity просочилась ServiceConnection … MainActivity $ 1 @ e794142, которая была первоначально связана здесь Поиск координат буквы, помещенной в TextView

Android щепотку увеличить большое изображение, эффективность памяти без потери деталей

Мое приложение должно отображать несколько изображений с высоким разрешением (около 1900 * 2200 пикселей), поддержка масштабирования. Чтобы избежать ошибки в памяти, я планирую декодировать изображение, чтобы показать полный экран, используя

options.inSampleSize = scale (scale was calculated as Power of 2 as Document) 

(Мое представление, которое я использовал, – это TouchImageView extends ImageView )

Поэтому я могу быстро загружать изображение и прокручивать между экранами (изображениями). Однако, когда я увеличиваю масштаб, мое приложение теряет детали из-за масштабированного изображения. Если я загружаю полное изображение, я не могу быстро загрузить или плавно перетащить, перетащить после увеличения зума. Затем я пытаюсь загрузить только полное изображение, когда пользователь начнет масштабирование, но я все еще не могу перетащить плавное изображение из-за очень большого изображения. Галерея Android может сделать это идеально даже 8Mpx изображений.

Любой может мне помочь. заранее спасибо

Извините, что ответили на старый вопрос, но я только что закончил изображение, которое отображает изображение из активов или внешнего хранилища с подвыборкой, и загружает плиты с более высоким разрешением из изображения, когда вы щелкаете для увеличения. В качестве изображений высокого разрешения для областей Экрана не загружается, он должен избегать исключений из памяти.

https://github.com/davemorrissey/subsampling-scale-image-view

Я знаю, что вопрос был задан давно, но этот ответ может помочь другим людям, борющимся с этим. У меня была такая же проблема. Вы должны рассмотреть возможность использования WebView и загрузки изображения с ним, даже если это локальное изображение. Например, для загрузки изображения в активах используйте следующее:

 // Get a WebView you have defined in your XML layout WebView webView = (WebView) findViewById(R.id.webView1); // Fetch the picture in your folders using HTML String htmlData = "<img src=\"my_image.png\">"; webView.loadDataWithBaseURL("file:///android_asset/", htmlData, "text/html", "utf-8", null); // Activate zooming webView.getSettings().setBuiltInZoomControls(true); 

Я признаю, что для такой задачи очень странно использовать WebView , это единственное решение, которое я нашел. По крайней мере, вы никогда не получите исключение OOM.