Я разрабатываю экран галереи, чтобы пользователь мог выбирать некоторые изображения с устройства и отправлять их другому пользователю. Я использую Fresco
для загрузки изображений, но, в зависимости от устройства, изображения загружаются очень медленно, и прокрутка на экране тоже медленная.
Изначально я загружал изображение таким образом:
Uri uriPhoto = Uri.parse("file://" + photoGallery.imageUri);
holder.draweeView.setImageURI(uriPhoto);
Затем я нашел setResizeOptions()
:
Uri uriPhoto = Uri.parse("file://" + photoGallery.imageUri);
ImageRequest request = ImageRequestBuilder.newBuilderWithSource(uriPhoto)
.setResizeOptions(new ResizeOptions(60, 60))
.build();
PipelineDraweeController controller = (PipelineDraweeController) Fresco.newDraweeControllerBuilder()
.setOldController(holder.draweeView.getController())
.setImageRequest(request)
.build();
holder.draweeView.setController(controller);
Это работает, но, как говорится в документации:
Это замедлит ваши декодирования и, возможно, остальную часть вашего приложения, так как оно сильно загружает процессор.
Результат не тот, что я, как пользователь, ожидаю.
Кто-нибудь знает, как решить эту проблему?
Спасибо!
setDownsampleEnabled
вместоsetResizeOptions
. Согласно документу, это должно быть намного эффективнее - person Blackbelt   schedule 29.12.2015Application
, верно? - person rsicarelli   schedule 29.12.2015Application
- person rsicarelli   schedule 29.12.2015