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

FAQ | 为大屏幕设备构建应用的常见问题解答

所以强烈建议您优先选择使用 Jetpack Compose。...对于基于 View 的应用,您可以使用资源限定布局,通过底部导航——底部应用栏 (App Bar) 或底部导航菜单 (Navigation Menu)——形成窄小的布局,也可以使用 Navigation...Jetpack Compose 是用于构建原生 Android 界面的工具包,可让您更轻松地设计和构建应用的界面,更快地打造更出色的应用。...如果您使用Fragment 或者有可能已经在一个 Activity 应用中使用Compose,那么请勿使用 Activity Embedding,此时我们建议您检查所有应用的构建界面,具体实现方法请查看近期文章...从技术实现来说,要手动实现这些转换效果并在不同的设备形态下有着顺畅的交互并非易事,您可以借助我们为 Android 打造的界面工具包 Jetpack Compose进行构建。

3.5K10
您找到你想要的搜索结果了吗?
是的
没有找到

为任意屏幕尺寸构建 Android 界面

△ 警告窗口 展开警告可以查看到 Android Studio 是否提供了修改建议,这里关于底部应用栏警告的修改建议就是使用 Navigation Rail、抽屉式导航栏,或使用顶部应用栏代替。...我们先来进行第一项优化,使用 NavRail 而非底部应用栏,首先我们要考虑的是导航模型,所幸我们不会更改很多具体的视图,仅仅只会更改导航方式,因为 NavRail 会一直存在于整个视图体系,可以通过它导航到任何其他视图...由于任务和详情都呈现在 SlidingPaneLayout 的同一个新的 Fragment ,因此我们为该 Fragment导航交互专门添加一个新的子导航层次结构。...Jetpack Compose Jetpack Compose 在 2021 年 7 月发布了 1.0 版本后,在 Android 开发者社区产生了巨大反响,成千上万的应用已经在生产环境中使用Compose...Jetpack Compose 本身是一种声明式的界面工具包,通过它您可以根据页面状态进行描述,Compose 会自行进行所有必要的更新。

4.1K20

动画实现更简单,Navigation Compose 帮您忙

这里有个很大的课题是页面级的过渡动画,这也是 Navigation Compose 一直致力解决的问题,具体是满足下面三种场景: 仅使用 Compose 1.0.0 稳定的动画 API 开始对 Compose...在追求完美的动画 API 的过程,对 Compose 进行了大量的修改才一步步迭代到 版本 1.0.0。...实验性 API 和语义化版本控制 实验性 API (任何在 Kotlin 领域使用 @RequiresOptIn 注解的 API) 可能随时会被更改。...对这些稳定的 API 进行破坏性变更需要增加主版本号 (,'2.0')。 这对向前和向后兼容很友好。...同时,我们可以使用 null 表示 "使用默认值"。这些默认值依次来自父导航图、父导航图的父导航图,一直向上到根 AnimatedNavHost。

1.8K20

Android Jetpack 学习笔记(1) - 概述

为何使用 Android Jetpack? 遵循最佳实践: Jetpack 采用最新的设计,且向后兼容性,可以减少崩溃和内存泄露。...消除样板代码: Jetpack 可以管理各种繁琐的后台任务、导航和生命周期管理等。 减少不一致: Jetpack 的组件库可在各种 Android 版本和设备以一致的方式运作,助您降低复杂性。...compose * 使用描述界面形状和数据依赖项的可组合函数,以编程方式定义界面。 databinding * 使用声明性格式将布局的界面组件绑定到应用的数据源。...fragment * 将您的应用细分为在一个 Activity 托管的多个独立屏幕。...Jetpack ComposeAndroid 的新 UI 工具包 Jetpack ComposeAndroid 的全新现代 UI 工具包,此版本添加了许多新功能:视图互操作性、更多 Material

1.3K20

详解 Android 12L|更好地适配大屏幕设备

对于已经使用 Fragment 的现有应用,虽然更新导航模式和使用 SlidingPaneLayout 等方式是针对大屏幕设备的布局优化的好方法,但我们了解到基于多个 Activity 的应用不在少数。...使用 Compose 更加轻松地适应屏幕的变化 通过 Jetpack Compose 可以更加轻松地针对大屏幕和多样化布局进行构建。...△ Jetpack WindowManager 的窗口尺寸类 让应用能够感知折叠 WindowManager 还为不同的窗口特征 (折叠和铰链) 提供了通用的 API 接口。...更多详情 为了帮助您针对大屏幕和可折叠设备进行构建,无论您使用的是 View 还是 Compose,我们都会为您提供帮助!...我们即将推出全新的指南,为您说明如何在全新和现有的应用中支持不同的屏幕尺寸、如何为 View 和 Compose 实现导航、如何利用可折叠设备的优势等内容。

3.7K20

Jetpack Compose 使用前后对比

为了让您对架构有一个直观印象,下面是应用的模块图: △ Tivi 的模块图,使用 Jake Wharton 所提供的,十分方便的 Gradle 任务 生成 由于导航使用 深度链接 URI 实现,大多数...,同时每个 Fragment 的 UI 使用Jetpack Compose 实现。...第二个 (也是最后一个) 阶段是从 Fragment 迁出,并直接使用 Navigation Compose 组件。这一步在 这个 PR 完成。...这一现象与 Compose 无关。"完全接入 Compose" 使用的是最新版本的 Dagger/Hilt,该版本使用Android Gradle Plugin 7.0 的新 ASM API。...退一步讲,考虑到 Kotlin 编译器与 Compose 编译器插件为我们所做的事情,位置记忆化、细粒度重组等工作,构建时间能够 减少 29%, 可以说十分惊人。

1K30

Android:手把手带你了解实用的Android Jetpack

---- 前言 在2018年 Google I/O 大会上发布了一系列辅助Android开发者开发的实用工具集合:Jetpack 今天,我将主要介绍Android Jetpack的相关内容,包括其作用、...特点 高效开发:包含的多个组件协同使用 消除模板代码:可管理繁琐的 Activity, 后台任务、导航和生命周期管理 高质量:围绕现代化设计实践构建、具有向后兼容性,可有效减少崩溃 & 内存泄漏 --...包含的组件库: 4.2 架构 - Architecture 帮助开发者设计稳健、可测试且易维护的应用 Data Binding(数据绑定):属于支持库可使用声明式将布局的界面组件绑定到应用的数据源...表情 - Emoji:使用户在未更新系统版本的情况下也可以使用表情符号。 布局 - Layout:xml书写的界面布局或者使用Compose完成的界面。...---- 总结 本文对 Android Jetpack 进行了定性介绍 接下来推出的文章,我将继续讲解Android Jetpack的相关知识,包括每个部分组成的详细使用,感兴趣的读者可以继续关注我的博客哦

1.1K00

Carson带你学Android:手把手带你了解实用的Android Jetpack

前言 在2018年 Google I/O 大会上发布了一系列辅助Android开发者开发的实用工具集合:Jetpack 今天,我将主要介绍Android Jetpack的相关内容,包括其作用、特点 &...特点 高效开发:包含的多个组件协同使用 消除模板代码:可管理繁琐的 Activity, 后台任务、导航和生命周期管理 高质量:围绕现代化设计实践构建、具有向后兼容性,可有效减少崩溃 & 内存泄漏 3....包含的组件库: 4.2 架构 - Architecture 帮助开发者设计稳健、可测试且易维护的应用 Data Binding(数据绑定):属于支持库可使用声明式将布局的界面组件绑定到应用的数据源...表情 - Emoji:使用户在未更新系统版本的情况下也可以使用表情符号。 布局 - Layout:xml书写的界面布局或者使用Compose完成的界面。...总结 本文对 Android Jetpack 进行了定性介绍

95610

【建议收藏】Jetpack Compose编程知识全汇总 (含详细实例讲解)

: 尝试使用Jetpack Compose 示例应用 创建支持Jetpack Compose 的新应用 现有项目中支持Jetpack Compose 基于现状,我主要介绍第三种方式: 配置Kotlin...ViewCompose 如果想使用Compose的情况下,又不想迁移整个应用,可以在xml里面增加ComposeView,类似于占位符,然后在Actviity/fragment寻找该控件并调用...Android View 如果碰到在Compose环境,想要使用Android的View视图的情况,只需要使用AndroidView函数即可 @Composable fun CustomView...Android Jetpack Compose 最全上手指南 Jetpack Compose 环境准备和Hello World 布局 使用Material design 设计 Compose 布局实时预览...用Jetpack Compose写一个玩安卓App 准备工作 引入依赖 新建 Activity 创建 Compose PlayTheme 画页面 底部导航栏 管理状态 添加页面 [1240] 5.

6.2K60

导航: 多返回栈 | MAD Skills

支持多返回栈 让我们通过这个 仓库 的高级导航示例来看看实际效果。 该应用由 3 个标签页组成,每个标签页都有它自己的导航流。...为了在导航的早期版本中支持多返回栈,我们需要在该示例的 NavigationExtensions 文件添加一系列辅助函数。...// fragment 最新版本 https://developer.android.google.cn/jetpack/androidx/releases/fragment?...我运行 BottomNavigationTest 并观察每个底部导航行为测试的运行。 瞧,我们所有测试都通过了! 小结 就是这样!...如果您想了解更多有关底层 API 以及需要修改哪些内容以支持多返回栈的信息,请参阅我们之前的推文《全新的 Fragment: 使用新的状态管理器》。 感谢您关注本导航系列!

79920

Android-Jetpack笔记-Navigation之Fragment支持复用

上篇文章Android-Jetpack笔记-Navigation之Fragment使用提到,每次切换目的地,fragment是反复销毁重建的,按照谷歌推荐的1个APP只需1个activity的思路开发,...Jetpack笔记代码 本文源码基于SDK 29,IDE是Android studio 3.5.3 解决 给上篇文章的项目加些日志,从面板页切到通知页,再从通知页切回面板页,查看日志, ?...(provider, fragmentNavigator); //设置导航图 navController.setGraph(navGraph); //底部导航设置点击事件...然后,使用自定义导航器FixFragmentNavigator来createDestination创建目的地,这样就把导航器和目的地绑定在一起了。...可以看出,Navigation的思想是,把各种类型的页面都抽象成目的地Destination,进行统一跳转,不同的导航器则封装了不同类型页面跳转的实现,由NavController统一调度,而许许多多的目的地则编织成了一个导航

2K20

谷歌大佬强势分享《Jetpack Compose 权威指南》,带你参透声明式UI的终极奥义!

简单的聊聊 Compose 还不错的地方: Android开发习惯的继承 相信很多同学都有这样的习惯: ①使用 Kotlin 开发 ②必须协程 ③复杂的布局会使用 ConstraintLayout …...Android Jetpack 的支持 在 Compose 刚刚发布的时候,Android Jetpack 的很多其他库都第一时间给予了 Compose 支持,从而丰富了 Compose 的开发生态。...上跟 UI 不相关的库 Compose 应该都是支持的,在我写的Hoo,就使用了Paging、Navigation、ViewModel和LiveData等 Android Jetpack 库,再有协程和...Android Jetpack Compose 最全上手指南 Jetpack Compose 环境准备和Hello World 布局 使用Material design 设计 Compose 布局实时预览...用Jetpack Compose写一个玩安卓App 准备工作 引入依赖 新建 Activity 创建 Compose PlayTheme 画页面 底部导航栏 管理状态 添加页面 5.

4.1K30

Android Jetpack架构组件(五)之Navigation

并且,纯代码的方式使用起来不是特别友好,并且Appbar在管理和使用的过程显得很混乱。...相比之前Fragment的管理需要借助FragmentManager和FragmentTransaction,使用Navigation组件有如下一些优点: 可视化的页面导航图,方便我们理清页面之间的关系...通过destination和action完成页面间的导航 方便添加页面切换动画 页面间类型安全的参数传递 通过Navigation UI类,对菜单/底部导航/抽屉蓝菜单导航进行统一的管理 支持深层链接...二、Navigation使用 2.1 添加依赖 首先,新建一个Android项目,然后在build.gradle引入如下依赖脚本。...[在这里插入图片描述] 参考: Android Jetpack架构组件(四)之LiveData Android Jetpack架构组件(三)之ViewModel Android Jetpack架构组件(

1.2K00
领券