Android data binding guideでは、アクティビティまたはフラグメント内の値のバインディングについて説明していますが、カスタムビューでデータバインディングを実行する方法はありますか? my_custom_view.xml
でカスタムビューでのアンドロイドデータバインディング
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.mypath.MyCustomView
android:id="@+id/my_view"
android:layout_width="match_parent"
android:layout_height="40dp"/>
</LinearLayout>
::私のような何かをしたいと思います
<layout>
<data>
<variable
name="myViewModel"
type="com.mypath.MyViewModelObject" />
</data>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{myViewModel.myText}" />
</LinearLayout>
</layout>
カスタムを設定することによってこれを行うことが可能に見えるが、これはすぐに面倒になる、カスタムビューの属性バインドする値がたくさんある場合。
私がやろうとしていることを達成する良い方法はありますか?カスタムビューで
あなたは、カスタマービューを膨張させた後、あなたのMyCustomViewクラス内のデータを結合しようとしましたか? –
私はこれを達成するためにいくつかのことを試みましたが、バインディング関数はアクティビティやフラグメントに含まれる情報を必要とするようです。 これらの例では、カスタムビュー内でこれを達成する方法のサンプルが提供されていませんでした。これを達成するための簡単なコードスニペットは非常に高く評価されます。 – Dave
FYI:xmlレイアウトファイルには、慣例によりアンダースコア表記が付けられていると思います。 –