草庐IT

Jetpack-MVVM

全部标签

Android Jetpack 从使用到源码深耕【数据库注解Room 从实践到原理 】(三)

前面两篇文章,我们一起学习了,Room引入的背景、Room的使用方式、Room的实现原理猜想验证、Room的源码原理探索总结。本文,我们将其中牵扯到的课外知识点or过程中没有说到的知识点,进行一下单独的总结。题外话:扩展知识点总结1.抽象工厂的设计模式应用在源码探索的过程中,大家是否发现了这样一个类。publicinterfaceSupportSQLiteOpenHelperextendsCloseable{StringgetDatabaseName();voidsetWriteAheadLoggingEnabled(

Android Jetpack 从使用到源码深耕【数据库注解Room 从实践到原理 】(三)

前面两篇文章,我们一起学习了,Room引入的背景、Room的使用方式、Room的实现原理猜想验证、Room的源码原理探索总结。本文,我们将其中牵扯到的课外知识点or过程中没有说到的知识点,进行一下单独的总结。题外话:扩展知识点总结1.抽象工厂的设计模式应用在源码探索的过程中,大家是否发现了这样一个类。publicinterfaceSupportSQLiteOpenHelperextendsCloseable{StringgetDatabaseName();voidsetWriteAheadLoggingEnabled(

Android MVVM详解

一、MVVM组成(1).Model:数据层,包含数据实体和对数据实体的操作(2).View:界面层,对应于Activity,XML,View,负责数据显示以及用户交互。(3).ViewModel:关联层,将Model和View进行绑定,Model或者View更改时,实时刷新对方。使用细节1.View只做和UI相关的工作,不涉及任何业务逻辑,不涉及操作数据,不处理数据。UI和数据严格的分开2.ViewModel只做和业务逻辑相关的工作,不涉及任何和UI相关的操作,不持有控件引用,不更新UI。二、AndroidMVVM持有关系与模式图 View显而易见Activity/Fragment(XML)便

Android MVVM详解

一、MVVM组成(1).Model:数据层,包含数据实体和对数据实体的操作(2).View:界面层,对应于Activity,XML,View,负责数据显示以及用户交互。(3).ViewModel:关联层,将Model和View进行绑定,Model或者View更改时,实时刷新对方。使用细节1.View只做和UI相关的工作,不涉及任何业务逻辑,不涉及操作数据,不处理数据。UI和数据严格的分开2.ViewModel只做和业务逻辑相关的工作,不涉及任何和UI相关的操作,不持有控件引用,不更新UI。二、AndroidMVVM持有关系与模式图 View显而易见Activity/Fragment(XML)便

【Jetpack】DataBinding 架构组件 ② ( 字符串拼接函数 | 绑定点击事件函数 | DataBinding 布局中使用 import 标签导入 Java、Kotlin 类 )

文章目录一、字符串拼接函数二、绑定点击事件函数三、DataBinding布局中使用import标签导入Java、Kotlin类1、DataBinding布局中使用import标签导入Java类2、DataBinding布局中使用import标签导入Kotlin类四、完整代码示例1、数据类2、导入的Java类3、导入的Kotlin类4、DataBinding布局文件5、Activity组件类一、字符串拼接函数在上一篇博客中,遇到在DataBinding布局中,向TextView组件设置int类型数据的情况会报错,最终的处理方式是将int类型的变量student.age通过String.value

【Jetpack】DataBinding 架构组件 ② ( 字符串拼接函数 | 绑定点击事件函数 | DataBinding 布局中使用 import 标签导入 Java、Kotlin 类 )

文章目录一、字符串拼接函数二、绑定点击事件函数三、DataBinding布局中使用import标签导入Java、Kotlin类1、DataBinding布局中使用import标签导入Java类2、DataBinding布局中使用import标签导入Kotlin类四、完整代码示例1、数据类2、导入的Java类3、导入的Kotlin类4、DataBinding布局文件5、Activity组件类一、字符串拼接函数在上一篇博客中,遇到在DataBinding布局中,向TextView组件设置int类型数据的情况会报错,最终的处理方式是将int类型的变量student.age通过String.value

Android MVVM架构

1.MVC,MVP,MVVVM1.1什么是MVVM1.MVVM,是Model-View-ViewModel的简写,是M-V-VM三部分组成。它本质上就是MVC的改进版。MVVM就是将其中的View的状态和行为抽象化,其中ViewModel将视图UI和业务逻辑分开,它可以取出Model的数据同时帮忙处理View中由于需要展示内容而涉及的业务逻辑。2.MVVM采用双向数据绑定,view中数据变化将自动反映到viewmodel上,反之,model中数据变化也将会自动展示在页面上。把Model和View关联起来的就是ViewModel。ViewModel负责把Model的数据同步到View显示出来,还

Android MVVM架构

1.MVC,MVP,MVVVM1.1什么是MVVM1.MVVM,是Model-View-ViewModel的简写,是M-V-VM三部分组成。它本质上就是MVC的改进版。MVVM就是将其中的View的状态和行为抽象化,其中ViewModel将视图UI和业务逻辑分开,它可以取出Model的数据同时帮忙处理View中由于需要展示内容而涉及的业务逻辑。2.MVVM采用双向数据绑定,view中数据变化将自动反映到viewmodel上,反之,model中数据变化也将会自动展示在页面上。把Model和View关联起来的就是ViewModel。ViewModel负责把Model的数据同步到View显示出来,还

【Jetpack】LiveData 架构组件 ( LiveData 简介 | LiveData 使用方法 | ViewModel + LiveData 示例 )

文章目录一、LiveData简介二、LiveData使用方法三、ViewModel+LiveData简单示例1、ViewModel+LiveData代码2、Activity组件代码3、运行效果展示四、ViewModel+LiveData+Fragment通信示例1、ViewModel+LiveData代码2、Activity组件代码Activity代码布局文件3、Fragment代码第一个Fragment代码第一个Fragment布局文件第二个Fragment代码第二个Fragment布局文件4、运行效果展示一、LiveData简介在视图View与数据模型Model通过ViewModel架构组

【Jetpack】LiveData 架构组件 ( LiveData 简介 | LiveData 使用方法 | ViewModel + LiveData 示例 )

文章目录一、LiveData简介二、LiveData使用方法三、ViewModel+LiveData简单示例1、ViewModel+LiveData代码2、Activity组件代码3、运行效果展示四、ViewModel+LiveData+Fragment通信示例1、ViewModel+LiveData代码2、Activity组件代码Activity代码布局文件3、Fragment代码第一个Fragment代码第一个Fragment布局文件第二个Fragment代码第二个Fragment布局文件4、运行效果展示一、LiveData简介在视图View与数据模型Model通过ViewModel架构组