В моем фрагменте у меня есть какой-то макет с текстом, а под этим макетом есть recyclerview
.Макет для элементов в адаптере представляет собой единый imageView, в котором я загружаю изображение из REST API с помощью Picasso.
Проблема в том, что при загрузке изображения экран автоматически прокручивается до первого элемента в recyclerview
, поэтому моя раскладка с текстом не видна, и, что странно, она прокручивается только до первого элемента, а не каждого.
Другими словами: вы открываете фрагмент -> вы видите макет с текстом -> когда изображение загружено, экран прокручивается до первого изображения, а макет теперь где-то выше, не виден, пока вы не прокрутите его вручную.
Как мне избавиться от этой надоедливой автопрокрутки?
У меня также есть кнопка для загрузки других изображений, и если вы нажмете на нее recycler
выиграно`t прокручивать после загрузки изображений
Вот как я загружаю изображение:
override fun onBindViewHolder(viewHolder: RecyclerView.ViewHolder, p1: Int) {
Picasso.get().load(array_news[p1].image).into(target(viewHolder))
//Picasso.get().load(array_news[p1].image).into(viewHolder.itemView.news_item_image)
}
private fun target(viewHolder: RecyclerView.ViewHolder) = object: Target {
override fun onBitmapLoaded(bitmap: Bitmap?, from: Picasso.LoadedFrom?) {
if (bitmap != null) {
val bmp = Bitmap.createScaledBitmap(bitmap, 400, 400, true)
viewHolder.itemView.news_item_image.setImageBitmap(bmp)
}
}
override fun onPrepareLoad(placeHolderDrawable: Drawable?) {}
override fun onBitmapFailed(e: Exception?, errorDrawable: Drawable?) {}
}