代码之家  ›  专栏  ›  技术社区  ›  Sid

Android视图可见性的动态绑定

  •  0
  • Sid  · 技术社区  · 7 年前

    我有一个使用在线数据库的Android应用程序,当用户第一次使用该应用程序时,会显示一个描述他们如何添加第一个数据条目的显示。一旦他们这样做了,条目列表就会显示出来。下次启动应用程序时,他们会看到“no entries”(无条目)显示一段时间,直到加载数据,然后是项目列表

    我的问题是将这两个视图绑定到显示的数据列表的大小。我已经在布局中创建了列表变量:

    <variable name="list" type="java.util.List" />
    

    在片段代码中设置绑定:

    binding.setList(mList) ;
    

    android:visibility="@{list.size() == 0 ? View.GONE : View.VISIBLE}"
    

    当应用程序启动时,绑定工作正常,但是,当项目添加到列表时,视图可见性不会改变。

    锡德

    1 回复  |  直到 7 年前
        1
  •  2
  •   ConstOrVar    7 年前

    有几种方法可以解决这个问题:

    1. 要动态更新布局,您应该使用 ObservableField
    2. binding.setList(mList)