Как добавить прослушиватель в программе просмотра, когда изображение готово к показу - PullRequest
0 голосов
/ 18 декабря 2018

В настоящее время у меня есть приложение, которое использует Picasso для загрузки изображений и их отображения в виде макулатуры.

Я хочу изменить свою логику, полностью покончив с Picasso и загружая изображения в фоновом режиме, когда приложениеизначально установлен.Во время последующих запусков приложения изображения будут отображаться из внутреннего хранилища.

Итак, как я могу сообщить программе восстановления информации о том, что изображение готово к отображению после того, как оно было успешно сохранено во внутреннем хранилище?Я бы предпочел, чтобы они не отображались сразу, потому что это заняло бы слишком много времени, но показывать каждое изображение по завершении загрузки (что-то вроде того, как это делает Пикассо).

Это мой текущийonBindViewHolder код:

 override fun onBindViewHolder(rawHolder: RecyclerView.ViewHolder, position: Int) {
        val holder = rawHolder as CustomVH
        holder.resourcesByCategory = resourcesByCategory[position]

        val dir : String = utils.getInternalDirectory("Covers") + "/CoverBookId" +  resourcesByCategory[position].id + ".jpg"
        val bookCover = File(dir)
        if (bookCover.exists()) {
            if (holder.bmp != null) {
                holder.bmp!!.recycle()
            }

            holder.resourceCover.setImageBitmap(null)
            val options = BitmapFactory.Options()
            options.inPreferredConfig = Bitmap.Config.RGB_565
            holder.bmp = BitmapFactory.decodeStream(FileInputStream(bookCover), null, options)

            if (holder.bmp != null) {
                holder.bmp = Bitmap.createScaledBitmap(holder.bmp, 150,180, true)
                holder.resourceCover.setImageBitmap(holder.bmp!!)
            }

        }

    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...