Android 架构组件 - 使用Lifecycle组件来处理生命周期

Lifecycle组件执行操作以响应另一个组件的生命周期状态的变化,例如activities和fragments。这些组件可以帮助您生成更有组织的、更轻的代码,这样更容易维护。 一个常见的模式是在activities和fragments的生命周期方法中实现相关组件的操作。然而,这种模式导致了代码的糟糕组织和错误的扩散。通过使用lifecycle组件,您可以将依赖组件的代码从生命周期方法中转移到本身组件中 android.arch.lifecycle包提供了类和接口,允许您构建基于生命周期...

阅读全文

Android架构组件 添加到你的项目

架构组件可以从Google的Maven存储库中获得。要使用这些步骤,请遵循以下步骤: 添加Google Maven存储库在默认情况下,Android Studio项目不会被配置为访问这个存储库。 要将它添加到您的项目中,为您的项目打开 build.gradle文件(而不是您的应用程序或模块),如下所示: 123456allprojects { repositories { jcenter() maven { url 'htt...

阅读全文

Android 架构组件指南

本指南适用于开发app的开发人员,现在希望了解最佳实践和推荐的体系结构,构建健壮、高质量的apps。 注意:本指南假定读者熟悉Android框架。如果你是应用开发的新手,请查看入门培训系列,其中包含了本指南的必备主题。 app开发人员面临的常见问题与传统的桌面应用不同,在大多数情况下,它们都有一个单一入口点,并作为一个单一的整体流程运行,而Android应用程序的结构要复杂得多。一个典型的Android应用程序是由多个应用组件组成的,包括activities、fragments、s...

阅读全文

Android 架构组件简介

一组帮助您设计健壮的、可测试的和可维护的应用程序库。管理UI组件生命周期和处理数据持久性。 应用架构指南 添加组件到你的项目 使用Lifecycle组件来处理生命周期 LiveData ViewModel 保存UI状态 Room持久性库 分页库 轻松管理app的生命周期新的lifecycle组件感知生命周期,可以帮助您管理您的活动和片段生命周期。保存配置更改,避免内存泄漏,并使用LiveData、ViewModel、LifecycleObserver和LifecycleOwner,轻...

阅读全文

使用协程的UI编程指南

本指南假定读者熟悉基本的协程概念,并给出了在UI应用程序中如何使用kotlinx.coroutines的具体示例。 所有的UI应用程序库都有一个共同点。它们有一个线程,所有UI的状态都被限制,所有的UI更新都必须在这个特定的线程中发生。对于协程,这意味着您需要一个适当的协程分派器上下文,它将协程执行限制在这个UI线程中。 特别是,kotlinx.coroutines 有三个模块为不同的UI应用程序库提供了协程上下文: kotlinx-coroutines-android – Andro...

阅读全文

kotlinx.coroutines入门指南示例

这是一个关于kotlinx.coroutines核心特性的简短指南,有一系列的例子。 介绍和设置作为一种语言,Kotlin在其标准库中只提供了最低限度的低级api,以使各种其他库能够利用这些库。与其他具有类似功能的语言不同,async和await在Kotlin中不是关键字,甚至都不是它的标准库的一部分。 kotlinx.coroutines是一个如此丰富的库。它包含了许多高级的可支持内核的原语,包括async和await。您需要添加对kotlinx-coroutines-core模块的依...

阅读全文

Anko 协程

目录 在你的项目中使用Anko协程 Listener助手 asReference() bg() 在你的项目中使用Anko协程添加anko-coroutines 到你的build.gradle: 123dependencies { compile "org.jetbrains.anko:anko-coroutines:$anko_version"} Listener助手asReference()如果您的异步API不支持取消,你的协程可能会被...

阅读全文

Anko SQLite

您是否厌倦了使用Android Cursor解析SQLite查询结果?您必须编写大量的样板代码来解析查询结果行,并将其封装在无数的try..finally块中,以便正确地关闭所有打开的资源。 Anko提供了许多扩展功能,以简化与SQLite数据库的工作。 目录 在项目中使用Anko SQLite 访问数据库 创建和删除表 插入数据 查询数据 解析查询结果 自定义行解析器 Cursor流 更新值 事务 在项目中使用Anko SQLite将anko-sqlite的依赖添加到您的build...

阅读全文

Anko 布局

为什么Anko布局? DSL的原因? 支持现有的代码 它是如何工作的 它是可扩展的吗? 在你的项目中使用Anko Layouts 理解Anko 基础知识 AnkoComponent 辅助块 主题块 布局和LayoutParams Listeners 定制的协程上下文 使用资源标识符 实例简化符号 UI包装 Include标签 Anko支持插件 安装Anko支持插件 使用插件 XML DSL转换器 为什么Anko布局?DSL的原因?默认情况下,Android中的UI是用X...

阅读全文

Anko 通用模块

目录 在您的项目中使用anko-commons助手 Intents Intent构建器函数 有用Intent调用 Dialogs Toasts SnackBars Alerts Selectors 进度dialogs 日志 强风格 日志记录器对象风格 Misc 颜色 维度值 applyRecursively() 在您的项目中使用anko-commons助手添加anko-commons到对您的build.gradle的依赖: 1234dependencies {...

阅读全文


Powered by Hexo and Hexo-theme-hiker

Copyright © 2013 - 2021 朝着牛逼的道路一路狂奔 All Rights Reserved.

访客数 : | 访问量 :