2017-03-01 48 views
0

我有兩種類型的模型:類別和子類別。我想用2種不同類型的佈局在回收站視圖中顯示它們。我知道我可以覆蓋方法getItemViewType,但問題是類別和子類別可能會更改(即添加或刪除新項目),所以我想知道是否可以創建此類回收視圖。我如何確定位置i上的元素是一個類別還是子類別?我在圖書館使用Realm https://github.com/thorbenprimke/realm-recyclerview,但這個問題應該適用於通用回收商的意見。Android Recyclerview類型

+1

向您的模型類中添加一個變量以確定該項目是否爲類別或子類別。例如布爾isCategory;然後您可以在執行任何操作之前檢查該標誌。 – nnn

+0

'我如何確定位置i上的元素是類別還是子類別? '按位置和索引編制。 – EpicPandaForce

回答

1

對於UI,您可以通過調用getItemViewType()方法直接從視圖持有者實現中獲取元素類型。它允許顯示特定的佈局。
在後端,您需要調用所需的notifyItemXXX()(例如,notifyItemInserted())開始執行重繪機制的方法 - 它將在所需位置更新您的視圖。

採取注
如果使用RealmRecyclerViewAdapter與諸如RealmResultsOrderedRealmCollectionImplOrderedRealmCollection默認實現您不能手動更改數據集。他們不支持添加/刪除操作。
P.S.當前領域版本是3.0.0。