Ошибка загрузки изображения из Firebase Firestore с помощью Glide - PullRequest
0 голосов
/ 11 апреля 2020

Я загружаю изображение, хранящееся в firebase firestore, используя Glide. Первоначально я загружал изображение в том же упражнении, где URL-ссылка извлекается из Firebase. До этого момента все шло гладко. Сейчас я пытаюсь загрузить это изображение во всплывающем окне Активность (в основном, другое действие). URL-адрес извлекается в исходном действии, а затем передается всплывающему действию.

Я проверил, что URL-адрес, переданный новому действию, является правильным, однако он не загружается. Может ли кто-нибудь помочь. Код в новом действии выглядит следующим образом:

val catch = intent.getStringExtra("imgSrc")
popUpText.visibility = View.GONE
if(catch!=null){
                val presImage = PhotoView(this@PopUp)
                val param2: LinearLayout.LayoutParams = LinearLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.WRAP_CONTENT, 1.0F)
                param2.setMargins(0,64,0,0)
                presImage.layoutParams = param2
                presImage.scaleType = ImageView.ScaleType.FIT_CENTER

                   val popProgress = ProgressBar(this@PopUp)
                    popProgress.layoutParams = param2
                    popProgress.setBackgroundColor(Color.parseColor("#beb2bb"))
                    popLayout.addView(popProgress)
                    Glide.with(this@PopUp)
                        .load(Uri.parse(catch))
                        .listener(object: RequestListener<Drawable>{
                            override fun onLoadFailed(
                                e: GlideException?,
                                model: Any?,
                                target: com.bumptech.glide.request.target.Target<Drawable>?,
                                isFirstResource: Boolean
                            ): Boolean {
                                return false
                            }

                            override fun onResourceReady(
                                resource: Drawable?,
                                model: Any?,
                                target: com.bumptech.glide.request.target.Target<Drawable>?,
                                dataSource: DataSource?,
                                isFirstResource: Boolean
                            ): Boolean {
                                popProgress.visibility=View.GONE
                                return false
                            }

                        })
                        .into(presImage)
}

Значение catch является правильным. Я проверил это, регистрируя то же самое. Я понимаю, что ошибка, которую я могу сделать, вероятно, очень тривиальна, но потратила много времени, не в состоянии расшифровать.

1 Ответ

1 голос
/ 11 апреля 2020

Просьба добавить ваш дочерний вид в родительский вид, чтобы показать на экране.

в этой части кода выше. Вы только что загрузили изображение в imageView, но забыли добавить imageView в родительский вид.

Надеюсь, эта помощь.

...