首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android Jetpack 导航组件 | Android 中文教学视频

应用内导航,也就是我们通常所说屏幕切换,一直是 Android 开发很关键的一部分。...我们已正式发布稳定版 Android Jetpack 导航组件,它包含丰富的库、工具和指南,为开发者们提供了一个强劲、完整的导航框架,让开发者可以轻松应对复杂的导航场景。...我们在这个视频中通过一些导航组件的应用实例,向您演示如何通过 "单个 activity 嵌套多个 fragment" 的方法来完成导航工作。...v.qq.com/x/page/v0879xupgo0.html Bilibili 视频链接: https://www.bilibili.com/video/av54529064/ 如果您想获取更详细的技术指导...,可以查看 Android 开发者网站上有关导航组件的 codelabs 课程和开发文档。

90040

Android Jetpack系列——Android Jetpack介绍

通过 Android Jetpack 可以让我们的 BUG 减少,让我们把更多的精力放在打造应用本身。 为了这种模板式的开发,Google 在2018年推出了 Android Jetpack。...接下来,我将会通过一系列的文章来介绍Android Jetpack,旨在希望了解、学习、应用Android Jetpack的小伙伴一个参考资料。...Compinents(架构组件) 架构组件包括 Data Bingding(数据绑定) Room(数据库) WorkManager(后台任务管家) Lifecycle(生命周期) Navigation(导航...(向后兼容) Android KTX(编写更加简洁的Kotlin代码) Multidex (多处理dex的问题) Test(测试) Behavior(行为) Download manager(下载给管理器...最后 可以看得出,Google 推出的 Android Jetpack 组件的集合,可以让我们开发者更加轻松地开发出出色的 Android 应用。

1.8K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android JetPack~LiveData(二) 数据倒灌问题

    这就是数据倒灌引起的问题。因为LiveData的数据会保存在内存中。 数据倒灌原因: 个人描述:我们都知道LiveData是一个观察者模式,被观察者只要改变了观察者会收到通知。...但是屏幕旋转后,mLastVersion的值却变成了-1。这里就是问题所在了。...倒灌原因小结 Activity异常销毁然后重建,ViewModel会保存销毁之前的数据,然后在Activity重建完成后进行数据恢复,所以LiveData成员变量中的mVersion会恢复到重建之前的值...问题找到了,那如何防止数据倒灌呢? 解决办法 再来回顾下,数据倒灌的常见方式: 屏幕旋转 用户手动切换系统语言 方案: 如果应用不需要横屏,就设置为永久竖屏。...设置android:configChanges="orientation|screenSize",这样普通生命周期就不走了 待续。。。。。

    2.3K20

    Android Jetpack | DataBinding

    DataBinding 是属于 Jetpack 的一个支持库,可以让你以在布局中声明属性的方式替代编码方式将布局中的 UI 组件和应用数据进行绑定 通常我们让控件和数据交互的方式如下面的代码,调用 findViewById...android:text="@{viewmodel.userName}" /> 这样你就不用在 Activity 中调用 UI 框架去绑定组件再赋值了,优点是更简洁易维护(Jetpack 其它组件都完美支持...demo.gif 示例代码 https://github.com/realskyrin/jetpack_databanding 总结 至此,你应该已经了解到 DataBinding 的强大之处了,虽然只是一个简单的可交互界面...但如果用传统方式去实现的话 Activity 中至少有 100 行以上代码,而 DataBinding 让 Activity 变得十分清爽,此外,DataBinding 与 LiveData、ViewModel 等 Jetpack...组件也是天作之合,Android 官方也非常推荐使用 Jetpack 来开发 APP,这已经形成 Android 开发的固定套路了,熟练掌握这些套路能让你多一些时间享受生活。

    1.1K10

    Android Jetpack - Lifecycles

    Lifecycles 简介 Lifecycles 即生命周期,属于 Jetpack 架构组件之一的 Lifecycles 组件是可以为其它组件提供生命周期感知能力的一个组件,而具备了生命周期感知能力的组件就叫生命周期感知组件...我们知道,一个 Android App 之所以能够完成一系列复杂任务,都是基于各个基础组件之间的密切配合,我们熟知的四大组件(Activity、Service、Broadcast、Content Provider...)是有生命周期的,并且 Android 的操作系统层或者 FrameWork 框架层会为其提供相应的回调,以便程序在不同的状态下做相对正确的事;而普通的组件或者我们自己开发的一些组件就没有这个待遇了,我们通常需要在合适的时候...我们通过一个简易计时器的例子来进行调整,在 Android Jetpack - ViewModel 中,我们实现了一个简易计时器,该计时器可以在 Activity 处于配置更改或后台的情况下继续计时,...完整示例代码 https://github.com/realskyrin/jetpack_lifecycles 生命周期感知组件的最佳实践和用例 最佳实践 保持 UI 控制器(Activity/Fragment

    1.4K30

    【Jetpack】Navigation 导航组件 ⑤ ( NavigationUI 类使用 )

    Menu 在 Android 开发中 , NavigationUI 是 用于构建 和 管理应用程序导航界面 的重要工具 , 可以极大地提高开发效率 ; 一、NavigationUI 类简介 NavigationUI...是 Google 官方提供的 用于管理 Navigation 导航的组件 , 属于 Android 系统的 Jetpack 工具包 ; 借助 NavigationUI 可以很方便的 创建和组织应用程序的导航界面...; 如 : 构建复杂的导航结构,垂直或水平的主菜单 , 侧边栏 , 抽屉导航栏等 ; 开发者 可以 通过 NavigationUI 轻松地管理页面的转换和导航 ; NavigationUI 提供了一些静态方法来处理...顶部应用栏 / 抽屉式导航栏 / 底部导航栏中 的界面导航 ; 本篇博客中介绍一种使用场景 : 使用 AppBar 中的菜单选项控制 Navigation 界面跳转 ; 在 Activity 中 ,...|| super.onOptionsItemSelected(item) } e、支持导航回退功能 默认状态下通过 Navigation 导航 , 跳转到 FragmentB 后是无法返回的 ,

    96040

    Android Jetpack - LiveData

    等),此感知能力确保了 LiveData 只更新处于生命周期活跃状态的组件的观察者 生命周期活跃状态的定义是这些组件正处于 STARTED 或 RESUMED 状态,LiveData 只会更新活跃状态的观察者...具体可以参考 Android Jetpack - Room 一文所提供的代码示例 转换 LiveData 您可能希望在将 LiveData 对象分派给观察者之前更改存储在 LiveData 对象中的值,...user = Transformations.switchMap(userId) { id -> getUser(id) } 完整代码示例 https://github.com/realskyrin/jetpack_livedata...参考 https://developer.android.com/topic/libraries/architecture/livedata https://codelabs.developers.google.com.../codelabs/android-room-with-a-view-kotlin https://medium.com/androiddevelopers/viewmodels-and-livedata-patterns-antipatterns

    2K30

    聚焦 Android 11: Jetpack

    重要更新 2018 年,我们推出了 Android Jetpack,帮助开发者遵循最佳做法、减少样板代码,并编写可以在不同 Android 版本和设备中运行的代码。...要全面了解 Jetpack 的新功能,您可以查看我们在 #Android11 发布中的 相关演讲,我们简要介绍了 Jetpack 库的许多更新,并提供了相应的入门指南。...今年,我们发布的 Navigation 2.3 带来多项重大改进,帮助您在应用的不同屏幕之间轻松导航并遵循 Android UI 原则。观看下面视频开始探索吧!...随着过去几个版本在隐私方面的变化,Android Jetpack 正在使您的应用更易于处理权限。...知识点 Jetpack 库已集成最佳实践并提供意见性指导,让您可以更容易构建更高质量的 Android 应用。

    91040

    Android JetPack应用架构

    简介 在2018年的谷歌I/O大会上,官方发布了一系列辅助android开发者的实用工具,合称Jetpack,以帮助开发者构建出色的 Android 应用。...作为下一代的 Android 组件,Android Jetpack 通过提供现代化应用架构以及提供强健的向后兼容能力等方式,让开发者能够快速、轻松地创造拥有卓越性能的高质量应用。...作为一个类库集合,Jetpack具有如下的一些特性: 快速开发:组件可单独使用,也可以同时工作,当使用kotlin语言特性时,可以让你更有效率 消除样板代码:Android Jetpack管理乏味的活动...,例如后台任务、导航和生命周期管理,你可以专注于让你的app更棒的东西。...构建高质量、健壮的app:基于现代设计实践,Android Jetpack组件可以减少崩溃和内存泄漏,且向后兼容。 示例

    31340

    【Android笔记】Jetpack Compose

    注意,Jetpack Compose中的控件被定义成一个一个的可组合函数,官方称这些控件为Composable,翻译成中文是“可组合项”,当强调它作为一个界面的一部分出现时,我会使用“控件”或“元素”之类的术语...如果一个元素有子元素,那么它会测量每一个子元素来帮助决定自己的大小,每当一个元素向父元素报告了它自己的大小时,那么它就得到了相对于自身来放置自己的子元素的机会。...现在这个子控件已经根据给定的限制被测量好,下一步,我们就需要计算它离顶部的高度,这里应该使用用户传入的高度减去FirstBaseline的位置,得到的就是这个控件应该离顶部的高度。...placeable.placeRelative(0,yPos) yPos += placeable.height } } } } 总结 可以看出Jetpack...相关视频 【Android进阶】Compose函数式编程重点分析

    81120

    Android-Jetpack笔记-LiveData

    LiveData即有生命的数据,通过观察者模式实现,当数据发生变化时可以收到回调。同时还具备感知宿主生命周期的能力。...Jetpack笔记代码 本文源码基于SDK 29 使用 引入依赖: def lifecycle_version = "2.2.0" //extensions包含Lifecycles、LiveData、...ViewModel implementation "android.arch.lifecycle:extensions:$lifecycle_version" 在act中使用, class ViewModelActivity...void onResume() { //设置数据 mLiveData.setValue("onResume"); } } 使用起来很简单,下面来看看是怎么实现的。...removeObserver 优缺点 优点: 使用简单,可以避免内存泄漏,RxJava则需结合RxLifecycle 能感知生命周期,在页面活跃状态才进行通知,可以避免页面不可见时还在占资源 参考文章 掘金-Android

    59120
    领券