首页 > TAG信息列表 > modelClass

一文搞懂Android-JetPack组件原理之Lifecycle、LiveData、ViewModel与源码分析技巧

2. 手动postValue或setValue触发数据通知 接下来,便以这两个任务链的顺序,对每个方法进行分析。 observer()注册监听者 @MainThread public void observe(@NonNull LifecycleOwner owner, @NonNull Observer<? super T> observer) { assertMainThread(“observe”); if (owner.

ViewModel源码分析

Activity中ViewModel实例的获取 private val mViewModel: DataTestViewModel by viewModels() 可见viewModel的获取是通过viewModels代理类实现的,我们继续跟进 通过代码查看,我们看到viewModels实际上是ComponentActivity的一个内联扩展方法 @MainThread inline fun <reified

22Sql注入的原理

我们知道,MP启动后会将BaseMapper中的一系列方法注册到mappedStatements中。那么究竟是如何注入的? 1、在MP中,ISqlInjector负责sql的注入工作,是一个接口,AbstractSqlInjector是它的实现类。关系如下: 2、在AbstractSqlInjector中,主要是由inspectInject()方法进行注入的。在实现方法中

ViewModel 源码分析

预备知识 在Android中我知道Activity有一个onSaveInstanceState函数,用于在Activity在不幸被回收或者配置改变时存储序列化对象,在下次重建时onRestoreInstanceState取出序列化数据. 要是我们有非序列数据呢? public Object onRetainNonConfigurationInstance和public Object

Jetpack框架探究03:ViewModel组件的使用与源码分析

 ViewModel 具备宿主生命后期感知能力的数据存储组件,使用 ViewModel 保存的数据,在页面因配置变更导致页面销毁重建之后依然也是存在的,其中配置变更主要是指横竖屏切换、分辨率调整、权限变更、系统字体样式变更。ViewModel 的优势: 页面更改数据不丢失  当设备因配置更改导

Jetpack之ViewModel

转: Jetpack之ViewModel ViewModelScope是viewModel的管理者,而ViewModelProvider是ViewModel的间接管理者。我们一般使用的时候都是ViewModel持有LiveData使用我们一般获取ViewModel对象都是使用ViewModelProvider的get()方法。在Activity或者Fragment 里调用val viewProvider:Vie