Android 使用毕加索从Firestore加载的图像保留了大量空白

Android 使用毕加索从Firestore加载的图像保留了大量空白,android,google-cloud-firestore,imageview,picasso,Android,Google Cloud Firestore,Imageview,Picasso,我正在使用毕加索加载存储在Firestore中的图像。但是,在屏幕上,与实际图像相比,ImageView占据了更大的空间。这是我获得的屏幕,提供了两张图像,因为我无法在一张屏幕截图中获得图像: 代码如下: val param5: LinearLayout.LayoutParams = LinearLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.WRAP_CONTE

我正在使用毕加索加载存储在Firestore中的图像。但是,在屏幕上,与实际图像相比,ImageView占据了更大的空间。这是我获得的屏幕,提供了两张图像,因为我无法在一张屏幕截图中获得图像:

代码如下:

val param5: LinearLayout.LayoutParams = LinearLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT,RelativeLayout.LayoutParams.WRAP_CONTENT, 1.0F)
val popPresImage = ImageView(this@Medicine)
popPresImage.layoutParams = param5
val presUri = Uri.parse(p0.child(querykey).child("List").child(listkey).child("Download Url").getValue(String::class.java))

Picasso.get()
.load(presUri)
.into(popPresImage, object: Callback {
  override fun onSuccess() {                                                                          
    popProgress.visibility = View.GONE
  }

  override fun onError(
    e: Exception?
  ) {

  }

})

popsublayout.addView(popPresImage)
我觉得这与图像定位有关。问题发生在我使用实际设备进行测试时。如果我使用仿真器,间距是完美的


如果您只是从Firestore获取URL并将其硬编码到毕加索的代码中,您会得到同样的结果吗?如果是这样,问题与Firestore无关,您可以降低复杂性并删除标记。另请参见“是”,即使在这种情况下,问题仍然存在。从标记中删除Firestore和Firebase您在毕加索链上缺少匹配我添加了一个.fit(),但之后图像无法加载。最后,我无法找到问题的解决方案。相反,我从毕加索转向了滑翔。现在图像显示正确。我不知道毕加索发生了什么事。有毕加索的专家能研究一下吗?无论如何,我花了6天的时间在这上面。