4 回答

TA貢獻1853條經驗 獲得超18個贊
問題是,我在負責顯示圖像的 ImageView 中的 layout_width 和 layout_height 上設置了 wrap_content 屬性。早些時候這張圖片的高度非常非常大(我不知道為什么)并且它導致了這個問題。
注意:來自 Google 的 GridView 圖像的 url 分辨率為 800x450 可以完美運行,問題僅在于 Firebase 存儲中的照片。
問題已部分解決,因為如果我設置固定大小的圖像,它會顯示圖像但我仍然有一些問題......例如 GridView 有時會將兩個圖像分層在同一位置,或者 GridView 的第一個元素沒有加載.

TA貢獻1818條經驗 獲得超11個贊
嘗試更改Picasso.with(context).load(photos.get(position)).into(imageView)
為: String url = photos.get(position);
Picasso.with(context).load(url).into(imageView)
另外:也許您來自 Firebase 的照片 url 始終為 Null,您是否調試過它?

TA貢獻1815條經驗 獲得超6個贊
如果您的 URL 正確,ImageView 可以正確渲染另一張圖像,那么 Picasso 似乎產生了一些可能的問題:
您在緩存或下載器方面遇到問題。請參閱此主題如何在 Picasso 中使用磁盤緩存?也許它可以幫助你。
下載您的 URL 完成但出現錯誤。嘗試將錯誤處理添加到畢加索鏈
Picasso.with(context) .load(photos.get(position)) .error(R.drawable.error_image) .placeholder(R.mipmap.ic_launcher) .into(imageView);
更多細節在這里
添加回答
舉報