4

Listデータバインディングライブラリを使用してレイアウトにバインドするモデルを持っています。リストの状態Viewに基づいて の可視性を変更するにはどうすればよいですか? isEmpty()何かのようなものandroid:visibility="@{model.list.isEmpty() ? View.INVISIBLE : View.VISIBLE}"

4

2 に答える 2

2

ドキュメントからは明らかではありませんでしたが、次のようにカスタムセッターを使用して実行できます。


私のモデルでは、宣言する必要がありました

@BindingAdapter("android:visibility")
public static void setVisibility(View view, Model model) {

        view.setVisibility(model.getList().isEmpty() ? View.INVISIBLE: View.VISIBLE);
}

次に、レイアウトで

 android:visibility="@{model}"

modelのモデルの変数の名前はどこですか<variable name=""/>

于 2015-11-11T23:03:45.143 に答える