Как обрабатывать щелчки строк адаптера в шаблоне MVVM и привязке данных? - PullRequest
0 голосов
/ 29 октября 2018

В моем макете ячейки адаптера для повторного просмотра я передаю докладчика как привязку и вызываю

android:onClick="@{(view) -> mainPresenter.showDetail(booksItem)}" 

из моего макета XML для запуска метода showDetails в презентере.

Но мне сказали, что докладчик не должен передаваться в привязке данных. Есть ли веская причина не передавать докладчика и какова была бы альтернатива привязке действий клика по ячейкам строки.

<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools">

    <data>

        <import type="android.view.View" />

        <variable
            name="mainPresenter"
            type="com.noisyninja.androidlistpoc.views.main.IMainPresenter" />

        <variable
            name="booksItem"
            type="com.noisyninja.androidlistpoc.model.skoobe.BooksItem" />
    </data>

    <androidx.cardview.widget.CardView
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <androidx.constraintlayout.widget.ConstraintLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:onClick="@{(view) -> mainPresenter.showDetail(booksItem)}"
            android:padding="@dimen/text_margin">
...