Android-Jetpack
文章平均质量分 90
Jetpack是一套库,帮助开发人员遵循最佳实践,减少样板代码,并编写跨Android版本和设备一致运行的代码,以便开发人员能够专注于他们关心的代码。
yu-Knight
雄关漫道真如铁,而今迈步从头越!
多年Android开发经验。
熟悉HTML、CSS、JS、JAVA、Kotlin、PHP等常用开发语言。
展开
-
Android Jetpack中Paging3 转换数据流
Android Jetpack中Paging3 转换数据流转换数据流执行基本转换转换数据过滤数据添加列表分隔符转换界面模型转换数据流处理界面中的分隔符避免重复工作转换数据流使用分页数据时,您通常需要在加载数据流时对其进行转换。例如,您可能需要过滤一系列数据项,或者将数据项转换为其他类型,才能在界面中呈现它们。数据流转换的另一个常见用例是添加列表分隔符。概括来说,直接对数据流进行转换可让您将存储库构造和界面构造分开。执行基本转换由于 PagingData 封装在响应式数据流中,因此您可以在加载数据原创 2022-03-02 18:17:26 · 2569 阅读 · 0 评论 -
Android Jetpack中Paging3 从网络和数据库加载页面
Android Jetpack中Paging3 从网络和数据库加载页面从网络和数据库加载页面协调数据加载Paging 生命周期基本用法创建 Room 实体实现 RemoteMediator定义 initialize 方法创建 Pager处理竞态条件管理远程键项键页面键添加远程键表使用远程键加载就地刷新从网络和数据库加载页面确保您的应用在网络连接不稳定或用户离线时也可以正常使用,从而提供更好的用户体验。一种方式是同时从网络和本地数据库加载页面。这样,您的应用就会从本地数据库缓存驱动界面,并且仅在数据库中原创 2022-03-02 17:58:23 · 1307 阅读 · 0 评论 -
Android Jetpack中Paging3 加载并显示分页数据
Android Jetpack中Paging3加载并显示分页数据加载并显示分页数据定义数据源选择键和值类型定义 PagingSource处理错误设置 PagingData 流在界面中显示分页数据加载并显示分页数据Paging 库提供了强大的功能,用于从较大的数据集加载和显示分页数据。本指南将演示如何使用 Paging 库设置来自网络数据源的分页数据流并将其显示在 RecyclerView 中。定义数据源第一步是定义用于标识数据源的 PagingSource 实现。PagingSource API原创 2022-03-02 17:20:32 · 3254 阅读 · 0 评论 -
Android Jetpack中Paging 库概览
Android Jetpack中Paging 库概览Paging 库概览库的架构代码库层ViewModel 层界面层Paging 库概览Android Jetpack 的一部分。Paging 库可帮助您加载和显示来自本地存储或网络中更大的数据集中的数据页面。此方法可让您的应用更高效地利用网络带宽和系统资源。Paging 库的组件旨在契合推荐的 Android 应用架构,流畅集成其他 Jetpack 组件,并提供一流的 Kotlin 支持。使用 Paging 库的优势Paging 库包含以下功能:原创 2022-03-02 17:01:52 · 2313 阅读 · 0 评论 -
Android Jetpack中LiveData 概览
Android Jetpack中LiveData 概览LiveData 概览使用 LiveData 的优势确保界面符合数据状态不会发生内存泄漏不会因 Activity 停止而导致崩溃不再需要手动处理生命周期数据始终保持最新状态适当的配置更改共享资源使用 LiveData 对象创建 LiveData 对象观察 LiveData 对象更新 LiveData 对象将 LiveData 与 Room 一起使用将协程与 LiveData 一起使用应用架构中的 LiveData扩展 LiveData转换 LiveDat原创 2022-02-28 18:53:06 · 178 阅读 · 0 评论 -
Android Jetpack中Lifecycle使用生命周期感知型组件处理生命周期
Android Jetpack中Lifecycle使用生命周期感知型组件处理生命周期使用生命周期感知型组件处理生命周期Lifecycle事件状态LifecycleOwner实现自定义 LifecycleOwner生命周期感知型组件的最佳做法生命周期感知型组件的用例处理 ON_STOP 事件使用生命周期感知型组件处理生命周期生命周期感知型组件可执行操作来响应另一个组件(如 Activity 和 Fragment)的生命周期状态的变化。这些组件有助于您编写出更有条理且往往更精简的代码,此类代码更易于维护。原创 2022-02-27 19:43:39 · 471 阅读 · 0 评论 -
Android Jetpack中DataBinding双向数据绑定(八)
Android Jetpack中DataBinding双向数据绑定(八)双向数据绑定使用自定义特性的双向数据绑定转换器使用双向数据绑定的无限循环双向特性双向数据绑定使用单向数据绑定时,您可以为特性设置值,并设置对该特性的变化作出反应的监听器: <CheckBox android:id="@+id/rememberMeCheckBox" android:checked="@{viewmodel.rememberMe}" android:onC原创 2022-02-26 18:38:02 · 776 阅读 · 0 评论 -
Android Jetpack中DataBinding将布局视图绑定到架构组件(七)
Android Jetpack中DataBinding将布局视图绑定到架构组件(七)将布局视图绑定到架构组件使用 LiveData 将数据变化通知给界面使用 ViewModel 管理界面相关数据使用 Observable ViewModel 更好地控制绑定适配器将布局视图绑定到架构组件AndroidX 库包含架构组件 (Architecture Components),可用于设计可靠、可测试且可维护的应用。数据绑定库 (Data Binding Library) 可与架构组件无缝协作,进一步简化界面的原创 2022-02-26 18:08:19 · 2093 阅读 · 0 评论 -
Android Jetpack中DataBinding数据绑定-绑定适配器(六)
Android Jetpack中DataBinding数据绑定-绑定适配器(六)绑定适配器设置特性值自动选择方法指定自定义方法名称提供自定义逻辑对象转换自动转换对象自定义转换绑定适配器绑定适配器负责发出相应的框架调用来设置值。例如,设置属性值就像调用 setText() 方法一样。再比如,设置事件监听器就像调用 setOnClickListener() 方法。数据绑定库允许您通过使用适配器指定为设置值而调用的方法、提供您自己的绑定逻辑,以及指定返回对象的类型。设置特性值只要绑定值发生更改,生成的原创 2022-02-26 16:59:06 · 1256 阅读 · 0 评论 -
Android Jetpack中DataBinding数据绑定生成的绑定类(五)
Android Jetpack中DataBinding数据绑定生成的绑定类(五)生成的绑定类创建绑定对象带 ID 的视图变量ViewStubs即时绑定高级绑定动态变量后台线程自定义绑定类名称生成的绑定类数据绑定库可以生成用于访问布局的变量和视图的绑定类。本页介绍了如何创建和自定义生成的绑定类。生成的绑定类将布局变量与布局中的视图关联起来。绑定类的名称和包可以自定义。所有生成的绑定类都是从 ViewDataBinding 类继承而来的。系统会为每个布局文件生成一个绑定类。默认情况下,类名称基于布局文原创 2022-02-26 15:50:00 · 1010 阅读 · 0 评论 -
Android Jetpack中DataBinding数据绑定使用可观察的数据对象(四)
Android Jetpack中DataBinding数据绑定使用可观察的数据对象(四)使用可观察的数据对象可观察字段可观察集合可观察对象使用可观察的数据对象可观察性是指一个对象将其数据变化告知其他对象的能力。通过数据绑定库,您可以让对象、字段或集合变为可观察。任何 plain-old 对象都可用于数据绑定,但修改对象不会自动使界面更新。通过数据绑定,数据对象可在其数据发生更改时通知其他对象,即监听器。可观察类有三种不同类型:对象、字段和集合。当其中一个可观察数据对象绑定到界面并且该数据对象的属性原创 2022-02-26 15:41:15 · 651 阅读 · 0 评论 -
Android Jetpack中DataBinding数据绑定布局和绑定表达式(三)
Android Jetpack中DataBinding数据绑定布局和绑定表达式(三)布局和绑定表达式数据对象绑定数据表达式语言缺少的运算Null 合并运算符属性引用避免出现 Null 指针异常视图引用集合字符串字面量资源事件处理方法引用避免使用复杂的监听器导入、变量和包含导入类型别名导入其他类变量包含布局和绑定表达式借助表达式语言,您可以编写表达式来处理视图分派的事件。数据绑定库会自动生成将布局中的视图与您的数据对象绑定所需的类。数据绑定布局文件略有不同,以根标记 layout 开头,后跟 data原创 2022-02-25 19:24:54 · 285 阅读 · 0 评论 -
Android Jetpack中DataBinding数据绑定使用入门(二)
Android Jetpack中DataBinding数据绑定使用入门(二)DataBinding数据绑定使用入门编译环境Android Studio 对数据绑定的支持DataBinding数据绑定使用入门了解如何准备开发环境以使用数据绑定库,包括支持 Android Studio 中的数据绑定代码。数据绑定库不但灵活,而且兼容性广,它是一个支持库,因此您可以在运行 Android 4.0(API 级别 14)或更高级别的设备上使用它。建议您在项目中使用最新的 Android Plugin for原创 2022-02-25 18:48:43 · 459 阅读 · 0 评论 -
Android Jetpack中DataBinding数据绑定库概览(一)
Android Jetpack中DataBinding数据绑定库概览(一)数据绑定库使用数据绑定库使用可观察的数据对象生成的绑定类绑定适配器将布局视图绑定到架构组件双向数据绑定数据绑定库数据绑定库是一种支持库,借助该库,您可以使用声明性格式(而非程序化地)将布局中的界面组件绑定到应用中的数据源。布局通常是使用调用界面框架方法的代码在 Activity 中定义的。例如,以下代码调用 findViewById() 来查找 TextView 微件并将其绑定到 viewModel 变量的 userName原创 2022-02-25 17:13:28 · 543 阅读 · 0 评论 -
Android Jetpack中ViewBinding视图绑定的理解与使用
Android Jetpack中ViewBinding视图绑定的理解与使用视图绑定设置说明用法在 Activity 中使用视图绑定在 Fragment 中使用视图绑定与 findViewById 的区别与数据绑定的对比视图绑定通过视图绑定功能,您可以更轻松地编写可与视图交互的代码。在模块中启用视图绑定之后,系统会为该模块中的每个 XML 布局文件生成一个绑定类。绑定类的实例包含对在相应布局中具有 ID 的所有视图的直接引用。在大多数情况下,视图绑定会替代 findViewById。设置说明注意:原创 2022-02-25 16:55:19 · 335 阅读 · 0 评论 -
Android Jetpack中DataStore的理解与使用
Android Jetpack中DataStore的理解与使用DataStorePreferences DataStore 和 Proto DataStore设置使用 Preferences DataStore 存储键值对定义架构创建 Proto DataStore从 Proto DataStore 读取内容在同步代码中使用 DataStoreDataStoreJetpack DataStore 是一种数据存储解决方案,允许您使用协议缓冲区存储键值对或类型化对象。DataStore 使用 Kotlin原创 2022-02-25 16:36:26 · 1709 阅读 · 0 评论