2015-11-11 68 views
1

我在使用數據綁定庫綁定到佈局的模型中有List。如何根據列表的isEmpty()條件更改View的可見性?喜歡的東西android:visibility="@{model.list.isEmpty() ? View.INVISIBLE : View.VISIBLE}"如何根據列表是否爲空來更改視圖的可見性

+0

通過使用listAdapter.notifyDataSetChanged(),應該通知您的列表視圖的適配器有關數據的更改。您可以嘗試'listView.invalidate()' – Nirel

+0

@Nirel我的問題是關於[數據綁定庫](http://developer.android.com/tools/data-binding/) – Ari

回答

1

好了,雖然它從docs不清楚,可以使用custom setters完成如下:


在我的模型,我不得不宣佈

@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=""/>

相關問題