Я написал следующий фрагмент кода, который показывает картинку в ImageView
.У клиентских изображений нет фиксированных размеров, но они хотят, чтобы изображения становились видимыми в полноэкранном режиме, поэтому я решил изменить размер изображения в соответствии с ориентацией планшета:
Picasso.with(context)
.load(new File(path))
.resize(isPortrait ? 400 : 600, isPortrait ? 600 : 400)
.centerInside()
.memoryPolicy(MemoryPolicy.NO_CACHE)
.into(imageCover)
. Он отлично работает для большинства изображений, несмотря нанемногие, которые становятся белыми после изменения размера.Я удалил строку .resize(isPortrait ? 400 : 600, isPortrait ? 600 : 400).centerInside()
и вместо этого использовал .fit()
, но результат был таким же.Несколько картинок стали белыми.Только если я использую следующий код, все изображения отображаются правильно:
Picasso.with(context)
.load(new File(path))
.memoryPolicy(MemoryPolicy.NO_CACHE)
.into(imageCover);
container.addView(view);
Все изображения .jpg
, но похоже, что некоторые изображения имеют кодировку, которая вызывает проблемы у Пикассо.