Glide/Picasso не загружают изображения через url (JSON)
Я получаю данные с помощью retrofit и вставляю их в recyclerView в новой активити. TextView заполняются без проблем, но imageView ничего не выводит, если добавить error в Glide - выводит изображение ошибки. С Picasso та же история. Не могу понять в чем дело, испробовал много способов
Вот мой Adapter
class SearchRecyclerViewAdapter internal constructor(context: Context?, data: Albums) :
RecyclerView.Adapter<SearchRecyclerViewAdapter.ViewHolder>() {
private val mData: Albums
private val mInflater: LayoutInflater
private var mClickListener: ItemClickListener? = null
// inflates the row layout from xml when needed
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val view = mInflater.inflate(R.layout.recyclerview_row_table, parent, false)
return ViewHolder(view)
}
// binds the data to the TextView in each row
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
val data = mData.results.get(position)
holder.tvAlbumName.text=data.collectionName
holder.tvArtistName.text=data.artistName
holder.tvSongNumber.text=data.trackCount.toString()
// Picasso.get().load(data.collectionViewUrl).into(imageView)
Glide.with(holder.logoImageView.context)
.load(data.collectionViewUrl)
.error(R.drawable.ic_launcher_background)
.centerCrop()
.into(holder.logoImageView);
Log.d("Glide","URL изображения "+ data.collectionViewUrl)
}
// total number of rows
override fun getItemCount(): Int {
return mData.resultCount
}
// stores and recycles views as they are scrolled off screen
inner class ViewHolder internal constructor(itemView: View) : RecyclerView.ViewHolder(itemView),View.OnClickListener {
var tvAlbumName: TextView
var tvArtistName: TextView
var tvSongNumber: TextView
var logoImageView:ImageView
init {
tvAlbumName = itemView.findViewById(R.id.tvAlbumName)
tvArtistName = itemView.findViewById(R.id.tvArtistName)
tvSongNumber = itemView.findViewById(R.id.tvSongsNumber)
logoImageView=itemView.findViewById(R.id.logoImageView)
itemView.setOnClickListener(this)
}
override fun onClick(view: View?) {
if (mClickListener != null) mClickListener!!.onItemClick(view, adapterPosition)
}
}
// data is passed into the constructor
init {
mInflater = LayoutInflater.from(context)
mData = data
}
fun setClickListener(itemClickListener: ItemClickListener?) {
mClickListener = itemClickListener
}
interface ItemClickListener {
fun onItemClick(view: View?, position: Int)
}
} Вот код ошибки через listener 2021-12-22 18:04:02.989 13892-13892/com.myprojects.registrationapp E/Ошибка: Вот эта коварная ошибка com.bumptech.glide.load.engine.GlideException: Failed to load resource There were 8 root causes: java.lang.RuntimeException(setDataSourceCallback failed: status = 0x80000000) java.lang.RuntimeException(setDataSourceCallback failed: status = 0x80000000) java.lang.RuntimeException(setDataSource failed: status = 0x80000000) java.lang.RuntimeException(setDataSource failed: status = 0x80000000) java.lang.RuntimeException(setDataSourceCallback failed: status = 0x80000000) java.lang.RuntimeException(setDataSourceCallback failed: status = 0x80000000) java.lang.RuntimeException(setDataSource failed: status = 0x80000000) java.lang.RuntimeException(setDataSource failed: status = 0x80000000) call GlideException#logRootCauses(String) for more detail