属性更改时,数据绑定活动不会更新值

时间:2017-03-13 18:27:52

标签: java android data-binding android-databinding 2-way-object-databinding

我的活动正在使用DataBinding

onCreate()我有

DataBindingUtil.setContentView(this, R.layout.main_layout);

因此它发出网络请求以获取数据,然后使用数据绑定正确填充屏幕。

问题在于,当我打开另一个活动B时,它返回一个我需要用来在原始活动中更新的值。

我正在尝试更新活动B返回的值onStart()中的值。

我用来更新模型。

public void setTitle(String title) {
    notifyPropertyChanged(BR.title);
}

在我的xml中我有android:text=“@{myItem.title}”但该属性不会更新。

我不确定是否因为我试图在onStart()更新它并且活动还没有准备好更新数据绑定属性?

但是我试图在不离开活动的情况下更新值并且它可以正常工作。

有任何线索吗?

1 个答案:

答案 0 :(得分:0)

你的二传手没有设置任何东西。它只会使绑定值无效。所以只需存储title,以便getter能够正确返回它。

public void setTitle(String title) {
    this.title = title; // assuming the member is named title as well
    notifyPropertyChanged(BR.title);
}