android studio MVVM实体类自定义getter and setter自动刷新UI界面

     android mvvm框架中LiveData<T>数据如果T是一个自定义实体类类型,修改实体类中的某个字段还需要重新手动调用LiveData的setValue或者postValue才可以更新UI界面,一般会让该实体类继承BaSEObservable,并重写他的set方法添加notifyPropertyChanged(BR.FieldName),在字段重新赋值时触发更新对应UI界面,不过当实体类属性字段比较多时依次添加notifyPropertyChanged函数和@Bindable注解比较费时费力,我们可以自定义generate getter and setter一键添加notifyPropertyChanged函数和@Bindable注解

在这里插入图片描述

自定义getter模板:

  1. 选择一个实体类右键 Generate->Getter and Setter

    在这里插入图片描述

  2. 点击Getter template右侧三点更多按钮,认是Intellij Defaule模板,我们把Intellij Defaule模板内容复制,点击加号创建一个新的模板,命名为Mvvm Observable

    在这里插入图片描述

  3. 将Intellij Defaule模板内容复制到Mvvm Observable模板模板上,并在顶部添加@Bindable,保存关闭

    在这里插入图片描述

自定义setter模板:

  1. 点击Setter template右侧三点更多按钮,认是Intellij Defaule模板,我们把Intellij Defaule模板内容复制,点击加号创建一个新的模板,命名为Mvvm Observable

    在这里插入图片描述

  2. 将Intellij Defaule模板内容复制到Mvvm Observable模板模板上,并在底部添加 notifyPropertyChanged(BR.$field.name);,保存关闭

    在这里插入图片描述

使用Mvvm Observable模板生成自定义getter and setter代码

     getter模板和setter模板分别选择Mvvm Observable模板,选中需要生成的字段,点ok自动生成代码

在这里插入图片描述

相关文章

显卡天梯图2024最新版,显卡是电脑进行图形处理的重要设备,...
初始化电脑时出现问题怎么办,可以使用win系统的安装介质,连...
todesk远程开机怎么设置,两台电脑要在同一局域网内,然后需...
油猴谷歌插件怎么安装,可以通过谷歌应用商店进行安装,需要...
虚拟内存这个名词想必很多人都听说过,我们在使用电脑的时候...