系统的 Jetpack 工具包 ; 借助 NavigationUI 可以很方便的 创建和组织应用程序的导航界面 ; 如 : 构建复杂的导航结构,垂直或水平的主菜单 , 侧边栏 , 抽屉导航栏等 ; 开发者...可以 通过 NavigationUI 轻松地管理页面的转换和导航 ; NavigationUI 提供了一些静态方法来处理 顶部应用栏 / 抽屉式导航栏 / 底部导航栏中 的界面导航 ; 本篇博客中介绍一种使用场景..., 编译一次应用 ; 编译成功之后 , 就可以使用 NavigationGraph 的 Design 模式 ; 点击 " New Destination " 按钮 , 添加两个 Fragment 到...; 3、Activity 导入 NavHostFragment 进入 Launcher 界面 MainActivity 的布局中 , 删除布局中的其它元素 ; 将 NavHostFragment 拖入到...布局中 , 拖入空间到布局后 , 松开鼠标 , 会弹出如下 " Navigation Graph " 对话框 , 选择要拖入的 NavigationGraph , 然后点击右下角 " OK " 按钮
今天为大家发布本系列文章中的第二篇: 导航到对话框目的地,如果您想了解第一篇发布的内容,请点击这里查看本系列的第一篇: 导航组件概览。...概览 在本系列的 上一篇文章 中,我大致介绍了导航组件以及如何使用导航图。 在这篇文章中,我会介绍如何使用 API 来导航到对话框目的地 (dialog destination)。...大部分的导航发生在 Fragment 目的地之间,在 UI 中的 NavHostFragment 对象内部,fragment 会被替换出去。但其实导航到容器外的目的地包括对话框也是可行的。...就像我们实现普通的目的地一样,我们也可以使用导航图来实现导航到对话框目的地。 甜甜圈记录应用 我有一个小麻烦: 我超爱甜甜圈。 我希望能记得之前吃的哪些甜甜圈是好吃的,这样下次我就可以再买它们。...点击 FAB 导航到输入新甜甜圈信息的对话框目的地 如果我们点击任一已存在的甜甜圈 (这里我点击了 "fundonut",因为很显然这里的描述需要再润色一下),应用会带我们到同一个对话框目的地,在这里我们可以编辑刚刚点击的甜甜圈的信息
前言 不知道小伙伴们是否注意到,用AS创建一个默认的新项目后,MainActivity已经有了很大的不同,最大的区别就是新增加了两个Fragment,同时我们注意到这两个Fragment之间跳转的时候并没有使用之前...,可以手动添加action标签,当然也可以通过拖拽来实现,如下: 这样我们就添加了一个从FirstFragment导航到SecondFragment的动作,我们再添加一个逆向的动作,最终的代码如下:...,会导航到SecondFragment。...当导航到第二个页面SecondFragment,返回按钮显示;当回退到首页时,返回按钮隐藏。...除此之外,Google还提供了Safe Args Gradle插件,该插件可以生成简单的对象和构建器类,这些类支持在目的地之间进行类型安全的导航和参数传递。
应用内导航,也就是我们通常所说屏幕切换,一直是 Android 开发很关键的一部分。...我们已正式发布稳定版 Android Jetpack 导航组件,它包含丰富的库、工具和指南,为开发者们提供了一个强劲、完整的导航框架,让开发者可以轻松应对复杂的导航场景。...我们在这个视频中通过一些导航组件的应用实例,向您演示如何通过 "单个 activity 嵌套多个 fragment" 的方法来完成导航工作。....html Bilibili 视频链接: https://www.bilibili.com/video/av54529064/ 如果您想获取更详细的技术指导,可以查看 Android 开发者网站上有关导航组件的
前言 大约在一年半前,我发布了Compose的第一篇文章 Jetpack Compose开篇 之 HelloWorld,连我自己也没想到,这一年半的时间中我竟再也没有看过Compose..., 如今Compose...已经发布了稳定版本,还没学会Compose让我的头发又白了许多~ 使用Navigation在Compose中导航 如果你之前不喜欢Android提倡的”单Activity“应用,那么在Compose中相信你会慢慢习惯的...接下来我们来看,如何使用navigation来进行页面导航呢?...RouteConfig.ROUTE_PAGEONE对应OnePage,RouteConfig.ROUTE_PAGETWO对应PageTwo,由于我们需要在各自的页面中进行页面跳转,所以将navController传递到对应的页面中去...), textAlign = TextAlign.Center ) } } 运行程序,点击跳转页面1按钮,效果如下图所示: 如此一来就实现了从页面1到页面
2,内容 2.1 如何服务器搭建网站(用宝塔面板) 请参考文章《如何服务器搭建网站(用宝塔面板)》 https://zhuanlan.zhihu.com/p/264988902 2.2 NGINX入门到精通系列...images/test.gif/下的index文件 3.请求127.0.0.1/images/default.gif 注释: try-files 如果不写上 $uri/,当直接访问一个目录路径时,并不会去匹配目录下的索引页...即 访问127.0.0.1/images/ 不会去访问 127.0.0.1/images/index.html 。
最近也有很多人来向我"请教",他们大都是一些刚入门的新手,还不了解这个行业,也不知道从何学起,开始的时候非常迷茫,实在是每天回复很多人也很麻烦,所以在这里统一作...
本文将围绕Android Jetpack展开,深度解析面试中可能涉及到的高级疑难问题,我将分享一些关于Android Jetpack的面试技巧,帮助你更好地准备面试。...参考简答: 其作用和核心组件包括: 作用: Navigation组件用于实现应用内的导航结构,使得从一个目的地(Destination)到另一个目的地的导航变得更加容易管理和统一。...核心组件: NavGraph(导航图): 包含应用中所有目的地和它们之间的导航关系。 NavController(导航控制器): 管理导航操作的控制器,负责管理与目的地的交互。...NavDestination(导航目的地): 表示导航图中的一个页面或操作,定义了目的地的属性和行为。...与Jetpack集成: Hilt与其他Jetpack组件无缝集成,使得在使用其他Jetpack库时能够更加方便地进行依赖注入。
打开 " res/navigation " 下的 Navigation Graph 的 Xml 配置文件 ,
Fragment / Activity 之间的数据传递 , 应用 App Bar 管理 等操作 ; 上述操作都是 使用纯代码方式进行实现 , 在页面和 App Bar 管理过程中使用比较繁琐 , 维护难度较大 ; Jetpack..., 以及界面之间的跳转关系 ; NavHostFragment 组件 : 该组件是 Navigation 组件的核心组成部分 , 它可以看做为一个空的 Fragment 容器 , 用于在应用中显示目的地..., NavHostFragment 会自动处理目的地之间的转换和回退操作 ; Navigation Graph 中定义的 Fragment 页面 需要通过 NavHostFragment 进行展示 ;...通过 NavController 可以轻松地跳转到不同的目的地 , 并处理回退操作 ; 切换 Fragment 显示流程 : 使用 NavController 组件 切换 Fragment , 设置...要跳转的 定义在 Navigation Graph 中定义的 Fragment ; NavController 组件 会将 指定的 Fragment 显示到 NavHostFragment 组件中 ;
Jetpack Compose 将动画实现的门槛降低了——从 "如果有时间再慢慢打磨" 到 "动画实现很简单,没有理由不试试看了"。...Compose 动画 从首次发布 Jetpack Compose 0.1.0-dev01 到最新的 Compose 1.0.1,经历了漫长的过程。...每个 composable 目的地都有四个新参数可以设置: enterTransition: 指定当您使用 navigate() 导航至该目的地时执行的动画。...exitTransition: 指定当您通过导航至另一个目的地的方式离开该目的地时执行的动画。...1.0 的限制,还有其他内容即将展现: Compose 1.1。
ARG_PARAM_NAME) age = it.getInt(ARG_PARAM_AGE) } Log.i("TAG", "FragmentA 传递到...ARG_PARAM_NAME) age = it.getInt(ARG_PARAM_AGE) } Log.i("TAG", "FragmentA 传递到...点击 " 跳转到 B " , 此时 , 跳转到 FragmentB 界面 : 此时 Logcat 日志面板 , 输出如下内容 : kim.hsl.nav I/TAG: FragmentA 传递到...let { name = it.getString("NAME") } 此处 没有 类型检查 , 即使你写错了具体的 属性值 名称 和 属性值 类型 , 编译器也不会报错 , 但是在执行时 ,...会出现错误 ; 下面的代码中 , 调用 getInt(“Name”) 也不会报错 ; 上面的 使用 Bundle 在 Fragment 之间传递 参数 , 没有类型检查 , 即使写错了数据类型 也不会报错
关于StreamDivert StreamDivert是一款中间人工具和网络流量转发工具,该工具可以针对目标系统中的进出网络流量执行分析和重定向操作,并且能够将TCP、UDP和ICMP流量转发至其他的目标地址...比如说,StreamDivert可以将所有传入的SMB连接转发到另一台服务器的445端口上,或者仅将指定传入的SMB连接从给定的源IP地址集转发至其他服务器。...StreamDivert功能介绍 将所有到特定端口的传入连接中继到另一个目标; 将从特定源IP到端口的传入连接中继到另一个目标; 将传入连接中继到SOCKS(4/5)服务器; 将所有到特定端口的传出连接中继到另一个目标...; 将传出连接中继到特定IP和端口的另一个目标上; 通过IPv4和IPv6处理TCP、UDP和ICMP流量; 强制通过特定网络接口重定向数据包; 工具下载&安装 广大研究人员可以访问该项目的Releases...10.0.1.49 port 53 udp > 0.0.0.0 53 -> 10.0.1.49 53 其中的[f]参数将会修改Windows防火墙,并将某个应用程序设置为例外,以正确地将传入流量重定向到另一个端口
2. 在“打开文件安全警告”对话框,单击以清除“打开此文件前始终询问”复选框。 3. 单击“打开”。
今天对项目里某个对象点F12转到定义,无法跳转,研究了一会儿,找到如下解决方案: 首先确认该函数是否能够正确被跳转到..就是是否真实定义了,然后确保要跳转的定义源码在项目文件下(而不是直接引用的DLL)...接下来关闭VS2017/2019 1进入dos操作界面:开始-运行-CMD 2转到IDE目录下:CD C:\Program Files (x86)\Microsoft Visual Studio\2019...类似问题:解决vs2017转到定义变灰,F12无法跳转问题 问题描述 打开VS2017,发现F12键失效了,同时在函数名上右键,查看定义、转到定义等都变灰了。我还打开了其他项目,也是一样的问题。...解决 在此之前,我想删除工程文件夹里的.SDF文件,所以百度,把VS2017的数据库禁用了,所以我想会不会和它有关,所以我把禁用数据库又设置为FALSE,具体操作是: 工具–》选项–》文本编辑器–》C/
上篇文章Android-Jetpack笔记-Navigation之Fragment使用提到,每次切换目的地,fragment是反复销毁重建的,按照谷歌推荐的1个APP只需1个activity的思路开发,...前边提到的自定义导航器需要指定名字@Navigator.Name("fixFragment"),是因为不同类型的目的地(页面)需要使用不同的导航器,在NavigatorProvider里有个map存储了多个导航器...然后,使用自定义导航器FixFragmentNavigator来createDestination创建目的地,这样就把导航器和目的地绑定在一起了。...可以看出,Navigation的思想是,把各种类型的页面都抽象成目的地Destination,进行统一跳转,不同的导航器则封装了不同类型页面跳转的实现,由NavController统一调度,而许许多多的目的地则编织成了一个导航图...参考 imooc-Jetpack开发短视频应用实战
而我们通过 Android Jetpack的导航组件可以帮助我们实现导航功能。导航组件还能可能遵循既定的原则来保证用户有一个良好的用户体检。...导航组件的构成 导航组件由三个关键的部分组成: Navigation graph(导航图): 这是一个包含所有位置导航相关信息的XML资源文件。...NavHost: 一个用于展示导航图当中目标视图的空的容器。Navigation组件包含一个实现NavHostFragment的默认的NavHost,它是用来展示fragment的目的地。...当我们通过导航浏览我们的应用程序的时候,我们可以通知NavController我们要沿着导航图当中的特定的路径进行导航,或者直接导航到特定的目的地。...涵盖了一些导航UI模式,比如只需要很少的额外工作就能实现抽屉导航和底部导航。 Safe Args - 一种Gradle插件,可在目的地之间导航和传递数据时提供安全的数据类型。
随着 Jetpack Compose 的流行,越来越多的开发者开始转向这种全新的声明式 UI 框架。作为一名聋人独立开发者,我一直在探索新的技术和工具,提高自己的技能和工作效率。...一、项目背景 展示 Jetpack Compose 如何简化 UI 的编码,如何使用 Material 3 提供的组件实现现代化的 Android 应用设计。...{ val items = listOf( BottomNavItem.Home, BottomNavItem.My ) // 获取当前导航目的地...深刻体会到 Jetpack Compose 有未来。 五、总结 通过这个项目,展示了如何使用 Jetpack Compose 和 Material 3 实现一个带有高级功能的底部导航应用。...无论是徽章通知的处理,还是底部导航栏与页面内容的同步显示,Jetpack Compose 都提供了简洁高效的解决方案。 有任何问题欢迎提问,感谢大家阅读 )
1、Navigation 各子部件的创建顺序 Navigation 导航组件各子部件的创建顺序要点如下 : 首先 , 创建被导航的 Fragment 页面代码 和 对应的布局文件 ; 然后 , 基于创建的...Fragment -> Navigation Graph -> NavHostFragment -> NavController , 后面的组件依赖于前面的组件 , 否则无法实现 Navigation 导航...、导入 Navigation 依赖 使用 Navigation 组件 , 必须导入 Navigation 依赖 , 不同的开发语言导入不同的依赖 : 使用 Java 语言 开发 Navigation 导航...Fragment 页面 , 这里将 FragmentA 和 FragmentB 都纳入到 Navigation 导航管理中 ; 创建后可以通过拖动鼠标 , 设置 Navigation Graph 中两个...app:navGraph="@navigation/navigation_graph" /> 这里不建议在 Design 图形化界面中拖动 Container 下的 NavHostFragment 到布局中
https://v3.bootcss.com/components/#navbar-default
领取专属 10元无门槛券
手把手带您无忧上云