自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 【Jetpack】Room + ViewModel + LiveData 综合使用 ( 核心要点说明 | 组合方式 | 代码示例 )

通过调用 ViewModel 中定义的 数据库操作 方法 , 修改数据库中的数据 , 如果数据库中的数据发生了改变 , 就会自动回调 Observer#onChanged 方法;

2024-01-16 14:56:22 1276 1

原创 如何在Room框架下注册onUpgrade回调及自定义DatabaseErrorHandler

提供的回调接口有时很难满足我们的开发需求,因为它没有将数据库打开过程的完整生命周期事件暴露出来。在 Android 中,Room 为 SQLite 提供了高效稳定的抽象层,简化开发流程。方法来处理数据库损坏的情况,而其处理策略是删除db及其关联的日志文件。是初始化数据库的重要构建组件,通过它我们可以添加。很多时候这并不是我们想要的处理方式,通过代理。,幸运的是这个 callback 被注入到。进行一层代理并开放出想要的生命周期回调。的默认实现方式,这样就实现了自定义。中,并且 Room 允许我们使用。

2023-12-19 11:35:51 110 1

原创 如何使用LiveData实现Room数据库的数据变化监听?

LiveData 的优点是可以始终保持更新后的数据,可以感知生命周期并避免内存泄漏,可以在数据发生变化时只更新受影响的 UI 部分,还可以自动在后台线程上执行查询,避免阻塞主线程。在数据库版本升级的时候,我们可以使用@Database注解中的version参数来指定新版本号,然后重写onUpgrade()和onDowngrade()方法来实现数据库升级,这样我们就可以维护当前版本和历史版本的数据库了。在Room中,我们只需要定义一个接口,使用@Dao注解标记即可,Room会自动生成具体实现。

2023-12-08 17:22:53 599

转载 android-room-with-a-view

https://developer.android.com/codelabs/android-room-with-a-viewhttps://developer.android.com/codelabs/android-room-with-a-view

2023-12-08 15:51:36 56

转载 谈一谈单例模式、静态类和线程内唯一对象有什么区别

谈一谈单例模式、静态类和线程内唯一对象有什么区别 - 懒得勤快的文章 - 知乎 https://zhuanlan.zhihu.com/p/256342873说起单例模式、静态类、线程内唯一对象,想必大家都不陌生,或多或少都用过,然而在什么场景下我们该选用哪种模式?以及它们之间到底有什么根本的区别?今天我们就来详细的研究一下它们之间的联系和区别。这样的问题也是在面试的时候经常会被问到或提起的一个问题。可能这三者,我们最常用的也就是单例模式了,单例模式用在什么场合,为什么不用静态类而用单例?

2023-08-25 18:09:35 81 1

原创 Duilib VS2017 编译采坑

Duilib下载下来首次编译一直有坑,希望帮助到大家

2022-08-12 16:05:32 314 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除