文章 2022-10-30 来自:开发者社区

Jetpack 系列(3)—— 为什么 Activity 都重建了 ViewModel 还存在?

1. 认识 ViewModel1.1 为什么要使用 ViewModel?ViewModel 的作用可以区分 2 个维度来理解:1、界面控制器维度: 在最初的 MVC 模式中,Activity / Fragment 中承担的职责过重,因此,在后续的 UI 开发模式中,我们选择将 Activity / Fragment 中与视图无关的职责抽离出来,在 MVP 模式中叫作 Presenter,在 MV....

Jetpack 系列(3)—— 为什么 Activity 都重建了 ViewModel 还存在?
文章 2022-06-20 来自:开发者社区

Jetpack Compose中ViewModel、Flow、Hilt、Coil的使用

Compose可以配合多个Jetpack组件使用Compose可以配合多个Jetpack组件开发提高开发效率多种组合方式Compose配合ViewModel使用概述Compose中ViewModel的使用和Jetpack一致,通常我们构建页面的时候,如果一条数据多个布局都需要使用到的话我们只能在方法的形参中层层传递。但是这样明显是不合理的,会降低代码的可读性。使用ViewModel可以完美的解决....

Jetpack Compose中ViewModel、Flow、Hilt、Coil的使用
文章 2022-06-18 来自:开发者社区

android Jetpack—ViewModel使用方法和详细原理解析

1、ViewModel 初始化方式来到 androidx,ViewModel 的创建方式与老版本有了很大的不同,所以这里还是要将 Viewmodel 的初始化讲一下1.1、安卓工厂初始化每次都会重新创建 model,并且不受 ViewModelStore 管控,所以无特殊需求禁止使用该种方式使用 AndroidViewModelFactory 工厂创建viewmodel 类定义class And....

android Jetpack—ViewModel使用方法和详细原理解析
文章 2022-05-29 来自:开发者社区

Jetpack MVVM 使用错误(五):ViewModel 接口暴露不合理

在 Jetpack 架构规范中, ViewModel 与 View 之间应该遵循单向数据流的通信方式,Events 永远从 View 流向 VM ,而 State 从 VM 流向 View。如果 ViewModel 对 View 暴露的接口类型不合理很容易会破坏数据的单向流动。不合理的接口常见于以下两点:暴露 Mutable 状态暴露 Suspend 方法不合理1:暴露 Mutable 状态Vi....

Jetpack MVVM 使用错误(五):ViewModel 接口暴露不合理
文章 2022-05-13 来自:开发者社区

JetPack组件学习ViewModel

ViewModel的使用1.需要先创建ViewModel类,继承自ViewModel重写onclear方法,使得页面销毁的时候能够走到自定义的onClear方法中class MyViewModel : ViewModel() { //共享数据的核心在于拿到同一个LiveData实例,也就是拿到同一个ViewModel实例,其保存在ViewModelStore中 //而ViewMo...

JetPack组件学习ViewModel
文章 2022-05-13 来自:开发者社区

【Jetpack】学穿:ViewModel → 视图模型(下)

构造方法中初始化了Factory和ViewModelStore实例,继续往下走,跟下 get() 方法:网络异常,图片无法展示|在此拼接了一个 key,继续跟另一个 get() 方法:网络异常,图片无法展示|这里执行的操作非常简单明了:① 拼接key 区分不同作用域的ViewModel实例,规则:固定字符串+ViewModel完整类名;② 尝试从 缓存Map 中根据key获取ViewModel实....

【Jetpack】学穿:ViewModel → 视图模型(下)
文章 2022-05-13 来自:开发者社区

【Jetpack】学穿:ViewModel → 视图模型(中)

设置文本,预留点击接口而已,再接着到列表Fragment的布局,直接一个RecyclerView (fragment_list.xml)<?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" and...

【Jetpack】学穿:ViewModel → 视图模型(中)
文章 2022-05-13 来自:开发者社区

【Jetpack】学穿:ViewModel → 视图模型(上)

0x1、引言来来来,继续学穿Jetpack,本节带来组件 → ViewModel 视图模型的解读!叫 视图数据 可能更贴切,有人也叫 视图状态,都一个意思,怎么称呼看你自己喜欢~ViewModel 一言以蔽之ViewModel 将 视图数据 从 视图控制器 中分离,并实现了 数据管理 的:一致性、数据共享(跨页面通信) 及 作用域可控。① 视图数据与控制器分离视图控制器一般代指Activity和....

【Jetpack】学穿:ViewModel → 视图模型(上)
文章 2022-03-03 来自:开发者社区

Android Jetpack系列之 ViewModel

前言前面两篇文章我们已经学习了Lifecycle和DataBind,本篇文章我们来学习Jetpack系列中比较重要的ViewModel,Jetpack的很多很多组件都是搭配使用的,所以单独的知识点可能会有些”无意义“但却是我们项目实战的基础!ViewModel的使用ViewModel类旨在以注重生命周期的方式存储和管理界面相关的数据。ViewModel类让数据可在发生屏幕旋转等配置更改后继续存在....

Android Jetpack系列之 ViewModel

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。