自动生成Android Databinding Observable Objects

使用了Databinding,就不可避免的要创建Observable Objects

正如google所提供的那样,创建Observable Objects有两种方式:第一是在setter,getter方法加上注解;二是使用ObservableFields 创建一个public final 的字段。

最后一种方式因为是公有,可能会带来一些问题,还是偏向于第一种方式,使用第一种方式代码会像如下:

private static class User extends BaseObservable {
   private String firstName;
   private String lastName;
   @Bindable
   public String getFirstName() {
       return this.firstName;
   }
   @Bindable
   public String getLastName() {
       return this.lastName;
   }
   public void setFirstName(String firstName) {
       this.firstName = firstName;
       notifyPropertyChanged(BR.firstName);
   }
   public void setLastName(String lastName) {
       this.lastName = lastName;
       notifyPropertyChanged(BR.lastName);
   }
}

要是字段多,修改每一个getter,setter会显得非常困难,这里提供一种简单的修改方式,使用一个android studio 插件 DbSetter

源码地址在这里
https://github.com/LavenderStream/DbSetter
下载地址
https://plugins.jetbrains.com/plugin/9296-dbsetter

使用方法
在BaseObservable子类中调出Generate菜单(右键),会看到DatabindingSetter这个选项,选择生成字段, 自动填充

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容