@@ -17,14 +17,11 @@ package com.ichi2.anki.preferences.reviewer
1717
1818import android.view.LayoutInflater
1919import android.view.MotionEvent
20- import android.view.View
2120import android.view.ViewGroup
22- import android.widget.TextView
23- import androidx.appcompat.widget.AppCompatImageView
2421import androidx.recyclerview.widget.RecyclerView
25- import com.google.android.material.textview.MaterialTextView
2622import com.ichi2.anki.R
27- import com.ichi2.anki.utils.ext.findViewById
23+ import com.ichi2.anki.databinding.ReviewerMenuDisplayTypeBinding
24+ import com.ichi2.anki.databinding.ReviewerMenuItemBinding
2825
2926class ReviewerMenuSettingsAdapter (
3027 private val items : List <ReviewerMenuSettingsRecyclerItem >,
@@ -36,12 +33,12 @@ class ReviewerMenuSettingsAdapter(
3633 val inflater = LayoutInflater .from(parent.context)
3734 return when (viewType) {
3835 ReviewerMenuSettingsRecyclerItem .ACTION_VIEW_TYPE -> {
39- val itemView = inflater .inflate(R .layout.reviewer_menu_item , parent, false )
40- ActionViewHolder (itemView )
36+ val binding = ReviewerMenuItemBinding .inflate(inflater , parent, false )
37+ ActionViewHolder (binding )
4138 }
4239 ReviewerMenuSettingsRecyclerItem .DISPLAY_TYPE_VIEW_TYPE -> {
43- val itemView = inflater .inflate(R .layout.reviewer_menu_display_type , parent, false )
44- DisplayTypeViewHolder (itemView )
40+ val binding = ReviewerMenuDisplayTypeBinding .inflate(inflater , parent, false )
41+ DisplayTypeViewHolder (binding )
4542 }
4643 else -> throw IllegalArgumentException (" Unexpected viewType" )
4744 }
@@ -70,13 +67,13 @@ class ReviewerMenuSettingsAdapter(
7067
7168 /* * @see [R.layout.reviewer_menu_item] */
7269 private inner class ActionViewHolder (
73- itemView : View ,
74- ) : RecyclerView.ViewHolder(itemView ) {
70+ private val binding : ReviewerMenuItemBinding ,
71+ ) : RecyclerView.ViewHolder(binding.root ) {
7572 fun bind (action : ViewerAction ) {
76- findViewById< TextView >( R .id. title) .text = action.title(itemView.context)
77- action.drawableRes?.let { findViewById< AppCompatImageView >( R .id. icon) .setBackgroundResource(it) }
73+ binding. title.text = action.title(itemView.context)
74+ action.drawableRes?.let { binding. icon.setBackgroundResource(it) }
7875
79- findViewById< AppCompatImageView >( R .id.drag_handle) .setOnTouchListener { _, event ->
76+ binding.dragHandle .setOnTouchListener { _, event ->
8077 if (event.action == MotionEvent .ACTION_DOWN ) {
8178 onDragHandleTouchedListener?.invoke(this )
8279 }
@@ -87,10 +84,10 @@ class ReviewerMenuSettingsAdapter(
8784
8885 /* * @see [R.layout.reviewer_menu_display_type] */
8986 private class DisplayTypeViewHolder (
90- itemView : View ,
91- ) : RecyclerView.ViewHolder(itemView ) {
87+ private val binding : ReviewerMenuDisplayTypeBinding ,
88+ ) : RecyclerView.ViewHolder(binding.root ) {
9289 fun bind (displayCategory : MenuDisplayType ) {
93- findViewById< MaterialTextView >( R .id. title) .setText(displayCategory.title)
90+ binding. title.setText(displayCategory.title)
9491 }
9592 }
9693}
0 commit comments