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

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

用于管理 Navigation 导航的组件 , 属于 Android 系统的 Jetpack 工具包 ; 借助 NavigationUI 可以很方便的 创建和组织应用程序的导航界面 ; 如 : 构建复杂的导航结构...抽屉式导航栏 / 底部导航 的界面导航 ; 本篇博客中介绍一种使用场景 : 使用 AppBar 中的菜单选项控制 Navigation 界面跳转 ; 在 Activity , 使用 Navigation..., 会自动生成对应的 布局文件 : 注意 : 该操作比较坑 , 生成 Fragment 时 , 会自动添加 Kotlin 语言插件的 Gradle 依赖 , 必要时可以删除该依赖 ; 自动生成的依赖没有配置...模式后 , 会提示 Design editor is unavailable until after a successful project sync , 这是因为创建 Fragment 之后 , 还没有进行第一次编译...(navController, appBarConfiguration) 的作用就是将 Navigation 导航切换界面 , 记录到回退栈 ; // 默认状态下进入 FragmentB 后是无法返回的

66240

Jetpack:新一代导航管理Navigation

前言 不知道小伙伴们是否注意到,用AS创建一个默认的新项目后,MainActivity已经有了很大的不同,最大的区别就是新增加了两个Fragment,同时我们注意到这两个Fragment之间跳转的时候并没有使用之前...在导航试图中,我们可以通过添加activity/fragment等标签手动添加页面,也支持在Design页面通过界面添加,如下: 注意:这样添加后手动修改一下label。...添加NavHost 下一步我们需要向Activity添加导航宿主,导航宿主是一个空页面,必须实现NavHost接口,我们使用Navigation提供的默认NavHost————NavHostFragment...同一布局如果有多个导航宿主(比如双窗口)则必须制定一个为默认的导航宿主。 这时候我们运行应用,就可以发现Activity已经可以展示FirstFragment了。...(View) parent : null; } return null; } 这里可以看到通过view来获取NavController,如果没有则向上层查找(父view)直到找到或到根结点

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

Jetpack Compose之 在Compose中使用Navigation导航

前言 大约在一年半前,我发布了Compose的第一篇文章 Jetpack Compose开篇 之 HelloWorld,连我自己也没想到,这一年半的时间中我竟再也没有看过Compose..., 如今Compose...已经发布了稳定版本,还没学会Compose让我的头发又白了许多~ 使用Navigation在Compose中导航 如果你之前不喜欢Android提倡的”单Activity“应用,那么在Compose相信你会慢慢习惯的...接下来我们来看,如何使用navigation来进行页面导航呢?...在页面2调用popBackStack方法将当前页面出栈便又回到了页面1,这里就不贴页面2的代码了。...总结 除此之外,Navigation  在Compose还支持深层链接等,关于Compose的更多用法,欢迎持续关注我~

1.7K20

前沿 | 没有地图也能导航:DeepMind展示全新AI导航技术

导航是一项重要的认知任务,帮助人类和动物在没有地图的情况下穿过复杂世界中长长的路途。此类长距离导航可同时支持自我定位(「我在这里」)和目标表征(「我要去那儿」)。...DeepMind 未使用交通信息,也没有尝试建模车辆控制。 ? 在没有环境地图的情况下,DeepMind 智能体在视觉多样化环境中导航。...但和这些研究所不同的是,他们没有使用小规模的虚拟环境,而使用了城市规模的真实世界数据,包括伦敦、巴黎和纽约复杂的交汇道路、人行道、隧道以及各种拓扑结构。...正如谷歌街景的界面一样,智能体可以在其位置旋转或走向下一个全景图。但和谷歌地图以及街景环境不同的是,智能体没有小箭头提示、局域或全局地图,也没有著名的 Pegman(学习区分公路和人行道)。...该研究中使用的曼哈顿五个区域地图 导航是人工智能研究和发展的基础研究,尝试在人工智能体复现人类导航也可以帮助科学家理解其生物性基础。

1.1K50

动态 | 室内没有GPS信号,要怎么精确导航

AI 科技评论按:在现代化的机场候机楼、医院大楼、办公楼、运动场、大学校园和零售商店,方便易用的室内导航应用程序的市场日益扩大。...而智能手机磁力计、加速计和陀螺仪等先进传感器的出现将加速这一需求。...因为使用 GPS 信号的外部定位方法不够精确,无法有效地进行室内导航。室内定位系统应该能够探测用户在建筑物内的位置,并指示用户如何在建筑物内导航。这些系统用于各种各样的场景当中。...例如,在2017年,IBM 东京研究院为视障人士打造了一套实验性的高精度室内外语音导航系统。...在此过程,服务提供者需要使用智能手机收集所有行人可达区域的磁场读数,并创建室内空间的带标注的静态地图。在现实世界,终端用户的手机型号可能与用于这个阶段的特征指纹识别的智能手机型号不同。

1.1K20

细说Jetpack那些LiveData们

最后一个参数是一个带接收者的Lambda表达式,这个lambda表达式的接收者是LiveDataScope,可以直接在代码块(1处)调用其emit方法,向LiveData发值。...block的代码会在LiveData标为活跃状态后只执行,且正常情况下只会执行一次。LiveData的非活跃到活跃状态的切换发生在注册在其身上的活跃的observer从0变为1时。...cancel() ... } 开启一个取消协程任务,这个协程任务首先有个等待,在等待期间注释10下面的逻辑就得不到执行。...小结 本文介绍了Jetpack,LiveData比较有特点的子类。...视频: Android中高级进阶之MVVM与JetPack: LiveData 资深架构师逐题详解Android大厂精选高频面试题之LiveData

62620

Jetpack】Navigation 导航组件 ① ( Navigation 引入 | Navigation 特点 | Navigation 重要组件 | Navigation 使用流程 )

Fragment / Activity 之间的数据传递 , 应用 App Bar 管理 等操作 ; 上述操作都是 使用纯代码方式进行实现 , 在页面和 App Bar 管理过程中使用比较繁琐 , 维护难度较大 ; Jetpack...二、Navigation 特点 Navigation 提供了 可视化的 页面导航图 , 与 iOS 开发的 Xcode 环境的 StoryBoard 类似 ; 在 布局文件 的 Design 模式下..., 完成 Fragment 之间的导航 ; 如果要 为 Fragment 跳转设置动画 , 可以直接在 Navigation 图形化界面中选中某个跳转 , 然后直接在 布局文件的 Design 图形化界面...NavHostFragment 进行展示 ; NavController 组件 : 该组件是 NavHostFragment 的管理对象 , 用于管理应用导航操作 , 主要是完成在 Navigation...页面 创建 NavHostFragment 组件 执行 Fragment 页面跳转 , 并添加动画效果 使用 NavController 组件实现页面导航 使用 Safe Args 插件安全传递数据

39240

Jetpack】Navigation 导航组件 ④ ( Fragment 跳转中使用 safe args 安全传递参数 )

let { name = it.getString("NAME") } 此处 没有 类型检查 , 即使你写错了具体的 属性值 名称 和 属性值 类型 , 编译器也不会报错 , 但是在执行时 ,...会出现错误 ; 下面的代码 , 调用 getInt(“Name”) 也不会报错 ; 上面的 使用 Bundle 在 Fragment 之间传递 参数 , 没有类型检查 , 即使写错了数据类型 也不会报错...androidx.navigation.safeargs 插件 ; 由于在最新版的 Gradle 配置 , 使用 根目录下 build.gradle 构建脚本的 直接配置 plugins 插件的方式..., pluginManagement 是最新的 Gradle 配置 , 但是本项目中没有启用 , 注释掉也可以运行 ; buildscript 是老版本的 Gradle 编译时依赖配置 , 由于本次使用了...androidx.navigation.safeargs' version '2.3.0-alpha06' apply false }*/ III、Module 目录下 build.gradle 构建脚本 该配置没有需要注意的

41320

没有地图也能导航?DeepMind用街景来认路

译者 | 王柯凝 【AI科技大本营导读】在童年记忆,你是如何沿着路线去朋友家、学校或者商店的?那时候没有地图,只是简单的记住街景和沿途转向。...在没有地图的城市中学习导航时,我们提供了一个交互式导航环境 —— 使用来自 Google 街景视图的第一视角并将其环境游戏化,来训练人工智能。作为街景图像的标准,人脸和车牌比较模糊以至于无法识别。...请注意,这项研究适用于一般导航而不是汽车驾驶,在这里,我们既没有使用交通信息,也没有对车辆控制建模。...图注:我们的代理导航在多种视觉环境中导航,无需访问地图 当代理导航到达目的地(如指定经纬度坐标)时,该代理导航就会获得奖励,就像一个没有地图负责无限交付的快递员一样。...图注:本研究中使用的五个曼哈顿区域 导航是研究和开发人工智能的基础,并试图在人工代理导航复制导航可以帮助科学家了解其生物学基础。

1.1K90

Deepmind:让AI学会在没有地图的城市中导航

导航是重要的认知任务,它可以使人类和动物在复杂的世界无需借助地图,就可实现长途跋涉。...为了学习在没有地图的城市中进行导航,我们提供了一个交互式导航环境,该环境使用来自Google街景视图的第一人称视角照片,并游戏化该环境以训练AI。...我们建立一个基于神经网络的人工智能体,学习使用视觉信息(来自街景视图图像的像素)在多个城市中导航。请注意,这项研究是关于一般导航而非驾驶,我们没有使用交通信息,也没有尝试对车辆控制进行建模。 ?...在不建立地图的情况下学会导航 我们没有利用精确绘图和探测的传统方法。我们的方法是让智能体学习像人类一样只使用视觉观察的方式进行导航,而不借助于地图,GPS定位或其他辅助工具。...研究导航是研究和开发人工智能的基础,而且尝试在人工智能体复制导航也可以帮助科学家了解其生物性基础。

85470
领券