哈哈歉井,你在做反面教材嘛讨便?不知道哪個是你寫的速勇,哪個是網(wǎng)上的錯誤的。
糾正一下:首先,你的代碼里出現(xiàn)FastStaggeredGridLayoutManager?這個是從哪里來的?捌蚊。我猜測,繼承了LayoutManager,這個就是一切的關(guān)鍵(可能里面做了很多處理近弟,從而實現(xiàn)了瀑布流效果)缅糟。也不是StaggeredLayoutManager。
網(wǎng)上說的給一個random高度祷愉,也能實現(xiàn)窗宦。只不過數(shù)據(jù)多了赦颇,會錯位。比較有效的方式跟圖片一起獲取圖片的高寬來加載赴涵。
你說只有Glide能實現(xiàn)媒怯,你用過ImageLoader嘛?用過Picasso?用過Coil?..其實髓窜,不需要這些第三方庫也能實現(xiàn)扇苞。只不過Glide沒有圖片寬高的情況下能獲取寬高。
再說一個比較突出的寄纵,holder.getViewType()你知道這個是什么嘛鳖敷?感覺你沒理解這個是什么…
最后,無論是從哪里程拭,拷貝別人的代碼定踱,注明一下來處。表示尊重恃鞋。