Можно ли использовать библиотеку Picasso для загрузки изображений из файловой системы?
Я использую startActivityForResult
, чтобы пользователь мог выбрать фотографию из своей галереи, а затем отобразить выбранное изображение.
У меня уже есть рабочий код, чтобы получить файловую систему изображения Uri
, но не может получить метод Picasso.load()
.
Ответ 1
Конечно, вы можете. Его фактически довольно прямолинейно:
File f = new File("path-to-file/file.png")
или
File f = new File(uri)
Picasso.with(getActivity()).load(f).into(imageView);
также
Picasso.with(getActivity()).load(uri).into(imageView);
работы
Ответ 2
Да, вы можете.
Try:
Picasso.with(context).load(new File(YOUR_FILE_PATH)).into(imageView);
ИЗМЕНИТЬ
Вы также можете вызвать .load(YOUR_URI)
.
Ответ 3
В исходном коде я также обнаружил, что вы можете загрузить изображение из файловой системы, добавляя префикс строки file:
к вашему пути к изображению. Например:
file:path/to/your/image
Кроме того, при использовании startActivityForResult вы получите что-то вроде этого:
Uri imageContent = data.getData();
Затем вы можете напрямую вызвать Picasso.with(getContext()).load(imageContent.toString).into(imageView);
без необходимости создавать Cursor
и запрашивать путь к изображению.
Ответ 4
Попробуйте следующее:
Picasso.with(context)
.load("file://"+path) // Add this
.config(Bitmap.Config.RGB_565)
.fit().centerCrop()
.into(imageView);
Он отлично работает для меня.
Ответ 5
В принципе нам нужны три вещи: Context
, image´s path
и ImageView
Container
Picasso.with(context).load("/files/my_image.jpg").into(myImageView);
но мы можем использовать больше опций:
.resize(20, 20)
.centerCrop()
.placeholder(R.drawable.user_placeholder)
.error(R.drawable.user_placeholder_error)
и т.д...
Дополнительная информация: http://square.github.io/picasso/