私はチェックリストであるrecyclerviewリストを持っています。私はそれが日付に基づいてソートされ、チェックボックスがチェックされているかどうかを確認します。したがって、ユーザーがメイン画面上にある場合、日付に基づいて並べ替えられたリストが表示され、チェックボックスをクリックすると、その項目がリストの一番下に表示されます。Recyclerviewリストを動的に並べ替える
私はモデルクラスにcompareToメソッドを書いた:
public int compareTo(BucketItem o) {
if (this.isChecked && !o.isChecked){
return -1;
}else if(!this.isChecked && o.isChecked){
return 1;
}else if (this.isChecked && o.isChecked){
return 0;
}else{
return getDate().compareTo(o.getDate());
}
}
レイアウトは一つのアイテムを探し、次のようになります。
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="13dp"
android:paddingBottom="13dp"
android:weightSum="1">
<!--<TextView-->
<!--android:id="@+id/contact_name"-->
<!--android:layout_width="0dp"-->
<!--android:layout_height="wrap_content"-->
<!--android:layout_weight="1"-->
<!--/>-->
<RelativeLayout
android:layout_height="52dp"
android:layout_width="wrap_content"
android:id="@+id/RelativeLayout1"
android:orientation="vertical"
android:layout_marginBottom="16dp"
android:layout_weight="0.95">
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_centerVertical="true"
android:clickable="true"
android:onClick="itemClicked"
/>
<TextView
android:id="@+id/bucket_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@id/checkBox1"
android:layout_centerVertical="true"
android:text="TextView"
android:clickable="true"
android:onClick="editItem"/>
<TextView
android:text="TextView"
android:id="@+id/bucket_des"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_below="@+id/bucket_name"
android:layout_toEndOf="@+id/checkBox1" />
</RelativeLayout>
</LinearLayout>
私の主な質問は、私はCollections.sortをどこに置きますかさ新しい項目がリストに追加されるたびに、またはチェックボックスがチェックされるたびに呼び出されるように、リスト(リスト)を作成します。
チェックボックスをクリックするとアイテムが移動しますが、チェックされたアイテムは実際には下に移動しません。リストの並べ替えは基本的に期待どおりに機能しません。助言がありますか? – user4151797
これはあなたの質問に記載されたものではありません –