Я настраиваю свой адаптер RecyclerView, , и мне нужно использовать Activity Context, чтобы заполнить мою переменную viewmodel , а позже я буду использовать его для выполнения намерения перемещения. Почему я получил неразрешенную ссылку , даже если я поместил свой контекст в класс?
Я пытался привести к FragmentActivity, поскольку метод of()
запрашивает FragmentActivity
, но все тот же.
class TodoAdapter constructor(x:ArrayList<Notes>, c: Context) : RecyclerView.Adapter<TodoAdapter.Handler>() {
private var lists:ArrayList<Notes> = x
private var context:Context = c
private lateinit var viewmodel:TodoViewModel
class Handler(private val itemBinding:NotesListBinding): RecyclerView.ViewHolder(itemBinding.root) {
fun bind(note:Notes){
itemBinding.dataclass = note
itemBinding.viewmodel = ViewModelProviders.of(context).get(TodoViewModel::class.java)
itemBinding.notesCardView.setCardBackgroundColor(note.color)
}
}
Я ожидаю, что на контекст будут хорошо ссылаться, поскольку он находится в одном классе. Но он возвращает ошибку вроде:
e: /media/cua/Projectah/Android Studio/TODOLisT/app/src/main/java/com/cua/todolist/adapter/recyclerviewadapter/TodoAdapter.kt: (24, 59): Unresolved reference: context