哈哈,你在做反面教材嘛?不知道哪個是你寫的,哪個是網(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()你知道這個是什么嘛?感覺你沒理解這個是什么…
最后,無論是從哪里,拷貝別人的代碼,注明一下來處。表示尊重。