Как преобразовать размер dp в пиксели? - PullRequest
0 голосов
/ 13 сентября 2018

При загрузке изображений с помощью Picasso приложение работает слишком медленно из-за большого размера пикселя. Есть ли возможность уменьшить размер пикселя, не влияя на качество в Android.

Ответы [ 3 ]

0 голосов
/ 13 сентября 2018

Для Piccaso Вы должны использовать.

Picasso.with(context)
    .load(YOUR_IMAGE_PATH)
    .resize(600, 200) // resize your image to 600 x 200 ratio
    .onlyScaleDown() // the image will only be resized if it's bigger than 600x200 pixels.
    .into(IMAGEVIEW);
0 голосов
/ 13 сентября 2018

Использование:

Picasso  
.with(context)
.load(your_image_path)
.fit()
// call .centerInside() or .centerCrop() to avoid a stretched image
.into(imageViewFit);

Из документов:

fit() измеряет размеры цели ImageView и внутренне использует resize() для уменьшения размера изображения до размеров ImageView. О fit() нужно знать две вещи.Во-первых, вызов fit() может задержать запрос изображения, поскольку Пикассо нужно будет подождать, пока размер ImageView не будет измерен.Во-вторых, вы можете использовать fit() только с ImageView в качестве цели.

Преимущество состоит в том, что изображение имеет минимально возможное разрешение, не влияя на его качество.Более низкое разрешение означает меньше данных, которые будут храниться в кэше.Это может значительно уменьшить влияние изображений на объем памяти вашего приложения.Таким образом, если вы предпочитаете меньшее воздействие на память по сравнению с немного более быстрым временем загрузки, fit() - отличный инструмент.

узнайте больше здесь

0 голосов
/ 13 сентября 2018
 Picasso.with(this)
 .load(Image_Path)
 .resize(imageView.getWidth(), imageView.getHeight())
 .into(imageView);;
...