我正在为RealmObject使用databinding模型。它运行得很好,但现在我希望在数据更改时更新我的视图,并实现了Observable。
模式是:
public class RealmArticle extends RealmObject implements Observable {
public RealmArticle() {
}
private PropertyChangeRegistry registry =
new PropertyChangeRegistry();
@Bindable
public String getCountText() {
return countText;
}
public void setCountText(String countText) {
this.countText = countText;
registry.notifyChange(this, BR.obj);
}
@Override
public void addOnPropertyChangedCallback(OnPropertyChangedCallback callback) {
registry.add(callback);
}
@Override
public void removeOnPropertyChangedCallback(OnPropertyChangedCallback callback) {
registry.remove(callback);
}
}问题是RealmObject不支持PropertyChangeRegistry类型的字段。
安卓工作室说:Error:(18, 8) error: Field "registry" of type "android.databinding.PropertyChangeRegistry" is not supported.
有没有一种在不违反RealmObject功能的情况下实现此接口的方法?
发布于 2017-05-21 08:30:20
就像RealmObject状态
注释处理器将为您的RealmObject子类创建一个代理类。支持下列字段数据类型:
带有Ignore注释的字段没有这些限制,并且不需要getter或setter。
就像这样,您可以从代理生成中省略该字段。
或者,您也可以使用transient关键字来实现同样的目的。
发布于 2017-05-21 08:27:47
向该字段添加Ignore注释就足够了。
https://stackoverflow.com/questions/44089534
复制相似问题