2017-03-01 6 views
0

カテゴリとサブカテゴリの2種類のモデルがあります。私は2種類のレイアウトのリサイクラビューでそれらを表示したいと思います。私は方法getItemViewTypeを無効にすることができますが、問題はカテゴリやサブカテゴリが変更できる(つまり新しいアイテムが追加されたり削除されたりする)ことで、そのようなリサイクラビューを作成できるかどうか疑問でした。ポジションiの要素がカテゴリまたはサブカテゴリであるかどうかをどのように判断できますか?私はライブラリhttps://github.com/thorbenprimke/realm-recyclerviewでRealmを使用していますが、この質問はジェネリックリサイクラビューに適用する必要があります。Android Recyclerviewタイプ

+1

モデルクラスに変数を追加して、項目がカテゴリかサブカテゴリかを判断します。例えばboolean isCategory;アクションを実行する前にこのフラグをチェックすることができます。 – nnn

+0

'位置iの要素がカテゴリかサブカテゴリかどうかをどのように判断できますか? 「位置付けと索引付けによって。 – EpicPandaForce

答えて

1

UIの場合、getItemViewType()メソッドを呼び出すことによって、ビューホルダーの実装から直接要素の型を取得できます。特定のレイアウトを表示することができます。
バックエンドでは、再描画メカニズムの実行を開始するために必要なnotifyItemXXX()(たとえばnotifyItemInserted())メソッドを呼び出す必要があります。これは、必要な位置でビューを更新します。

をメモ
あなたはOrderedRealmCollectionなどRealmResultsなどとOrderedRealmCollectionImplのデフォルトの実装でRealmRecyclerViewAdapterを使用している場合は、手動で設定データを変更することはできません。追加/削除操作はサポートされていません。
P. Current Realmのバージョンは3.0.0です。