Пикассо не загружает представление в MainActivity - PullRequest
1 голос
/ 24 марта 2019

Я делаю основной проект Android Studio для загрузки URL-адреса в ImageView с помощью Picasso с Kotlin. Я следовал за каждым шагом с официальной веб-страницы Picasso, но когда я запускаю свое приложение, эмулятор показывает пустое представление.

В своем Gradle я добавил реализацию Пикассо:

implementation 'com.squareup.picasso:picasso:2.71828'

И интернет-разрешение в теге manifest:

<uses-permission android:name="android.permission.INTERNET"/>

А в MainActivity основное использование Пикассо:

Picasso.get().load("http://paproject.online/hp.jpg").into(imageTest)

imageTest - это идентификатор Imageview с layout_height = 200dp и layout_weight = 200dp.

Ответы [ 4 ]

1 голос
/ 26 марта 2019

Возможно, размер вашей фотографии слишком велик, поэтому в теге ImageView в XML Отредактируйте layout_width и layout_height в постоянном размере, например 100dp.

и если U может изменить Пикассо с помощью Glide . может быть, может помочь вам

0 голосов
/ 26 марта 2019

Хорошо, проблема уже решена. Похоже, что проблема загрузки изображений в Android 9.0. Итак, решение находится по этой ссылке: Проблема загрузки изображений Пикассо с Android 9.0 Pie . Спасибо всем за ваши ответы.

0 голосов
/ 26 марта 2019

Вы можете изменить размер изображения, прежде чем включать его в imageView

Picasso  
.with(context)
.load("http://paproject.online/hp.jpg")
.resize(200, 200) // resizes the image to these dimensions.
.into(imageViewResize);

Или вы можете использовать любую технику обрезки, например .CenterCrop ().Вы можете прочитать больше об этом https://futurestud.io/tutorials/picasso-image-resizing-scaling-and-fit

0 голосов
/ 24 марта 2019

Ваше изображение больше (1024x768), чем ваш ImageView, но, конечно, это не должно быть причиной для вас пустым. Попробуйте, как показано ниже, который также включает локальный ресурс изображения nopic для случаев ошибки. Кажется, вы правильно включили

// Lazy load the image with Picasso
get()
        .load(yourURL)
        .placeholder(R.drawable.nopic)
        .error(R.drawable.nopic)
        .into(img);
...