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

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

Menu 在 Android 开发中 , NavigationUI 是 用于构建 和 管理应用程序导航界面 的重要工具 , 可以极大地提高开发效率 ; 一、NavigationUI 类简介 NavigationUI...是 Google 官方提供的 用于管理 Navigation 导航的组件 , 属于 Android 系统的 Jetpack 工具包 ; 借助 NavigationUI 可以很方便的 创建和组织应用程序的导航界面...NavigationUI 类 , 统一管理 Fragment 页面切换相关的 UI 改变 ; 二、NavigationUI 类使用流程 本章节介绍使用 AppBar 中的菜单选项控制 Navigation..., 进入 Design 模式后 , 会提示 Design editor is unavailable until after a successful project sync , 这是因为创建 Fragment...Design 模式 ; 点击 " New Destination " 按钮 , 添加两个 Fragment 到 NavigationGraph 中 ; 将两个 Fragment 添加到 NavigationGraph

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

    Navigation的用法

    一.Navigation的诞生   单个Activity嵌套多个Fragment的UI架构模式,已经被大多数的Android工程师所接受和采用。但是,对Fragment的管理一直是一件比较麻烦的事情。...    5.通过NavigationUI类,对菜单,底部导航,抽屉菜单导航进行统一的管理     6.支持深层链接DeepLink 二.Navigation的主要元素   在正式学习Navigation...会自动处理系统返回键,当用户按下返回键时,系统自动将当前所展示的Fragment退出 app:navGraph="@navigation/nav_graph"/> //用于设置该容器对应的导航图...如果没有的话,可以重新编译一下项目。   ...五.NavigationUI的使用方法   在页面的切换过程中,通常还伴随着App bar中menu菜单的变化,对于不同的页面,App bar中的menu菜单很可能是不一样的。

    30420

    Android横屏下Fragment界面重叠问题

    2、正常情况下,我这个时候关闭了屏幕,然后在打开屏幕,可以看到 这个时候会显示 之前打开过的Fragment界面,导致界面重叠 ?...此时,我们测试将activity横屏显示去掉,让他竖屏显示,然后在进行关屏幕,打开屏幕操作,会发现 在竖屏的情况下,并没有发生界面重叠的问题。...可以看到,Activity又执行了一次onCreate()方法,而Fragment执行了多次onCreateView()   总结一下:锁屏关闭屏幕后,Activity会由横屏切换为竖屏,这个时候执行了...解决方法:   我们不让开关屏幕的时候Activity走生命周期,那么在清单文件中给Activity设置下面这两个属性即可 android:screenOrientation="landscape"...android:configChanges="orientation|keyboardHidden|screenSize" 注意:4.0以上的configChanges需要添加screenSize属性

    1.6K50

    【Jetpack】Navigation 导航组件 ② ( Navigation 核心要点说明 | 创建 Navigation Graph | 创建 NavHostFragment | 完整代码示例 )

    Navigation 导航组件各子部件的创建顺序要点如下 : 首先 , 创建被导航的 Fragment 页面代码 和 对应的布局文件 ; 然后 , 基于创建的 Fragment 创建对应的 Navigation..., 同时会生成对应的 Fragment 布局文件 ; 4、创建 Navigation Graph 右键点击 res 资源目录 , 在弹出的下拉菜单中 , 选择 " New / Android Resource...纳入导航管理 , 这也是要先创建 Fragment , 然后才能创建 Navigation Graph 的原因 ; 创建完 Navigation Graph 后 , 在 Design 模式下 , 点击.../navigation_graph" /> 这里不建议在 Design 图形化界面中拖动 Container 下的 NavHostFragment 到布局中 , 生成的代码是错误的 ; 具体出错的内容在错误记录专栏有详细分析...(this, R.id.fragment) NavigationUI.setupActionBarWithNavController(this, navController) }

    63120

    【错误记录】Android 编译报错 ( Attempt to invoke virtual method ‘void xx.ActionBar.setTitle()‘ on a null obj )

    :586) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1240) 二、问题分析 生成的布局文件代码如下 :...app:layout_constraintRight_toRightOf="parent" app:menu="@menu/bottom_nav_menu" /> fragment...android:id="@+id/nav_host_fragment_activity_bottom_navigation" android:name="androidx.navigation.fragment.NavHostFragment...对象 , ActionBar 是页面顶部的 标题栏 ; 在 Android Studio 中生成的代码 , 一般都是标准代码 , 不会出错 , 这里出现问题大概率是自己在项目中的其它设置导致的 ; 检查...与 ActionBar , 这里可以调用其他的关联方法 , 调用 NavigationUI.setupWithNavController() 方法 , 可以只关联 NavigationView 与 NavigationController

    68510

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

    二、Navigation 特点 Navigation 提供了 可视化的 页面导航图 , 与 iOS 开发中的 Xcode 环境中的 StoryBoard 类似 ; 在 布局文件 的 Design 模式下..., 设置跳转的动画 ; 通过 safe args 可以实现 Fragment 页面之间的参数安全传递 , 传统方式是使用 Intent 进行数据传递 ; 通过该 Design 模式下的 Navigation...action 跳转 点击 Navigation Graph 中 Design 模式下 的 " New Destination " 按钮 , 在弹出的下拉菜单中 , 可以选择之前创建的两个 Fragment..., 充满全屏 ; 生成的完整 Activity 布局文件代码如下 : fragment) NavigationUI.setupActionBarWithNavController(this, navController)

    93940

    android Fragment 的简单应用

    碎片(Fragment)是一种可以嵌入在活动中的UI片段,可以理解成一个迷你活动。...可以让所有的android 系统版本保持功能一致性,如果说你使用的是系统内置低的Fragment,那么4.2之前的设备运行就会奔溃,虽然说现在基本找不到4.2之前的设备。。。...上面这里重写了Fragment的onCreateView()方法,然后在这个方法中通过LayoutInflater的inflate()方法将刚才定义的left_fragment布局动态加载进来。...5.然后修改activity_main.xml中的代码 这里使用fragment>标签在布局中添加碎片。注意这里还需要显式的指明要添加的碎片类名,一定也要将类的包名带上。...1.新建一个another_right_fragment.xml,这个代码和上面的right_fragment.xml代码基本相同,只是将背景色改成了黄色,并将显示的文字改了改。

    42920

    深入浅出 NavigationUI | MAD Skills

    NavigationUI 类通过匹配目标页面 id 与菜单 id 实现不同页面之间的导航功能。让我们深入探索一下它的内部机制吧。...如果您希望随着文章内容同步操作,可以获取 这里的代码,里面包含了全部针对 Donut Tracker 应用的修改,可以基于该代码了解 NavigationUI。...首先我需要添加一个 AppBarConfiguration 对象,NavigationUI 会使用该对象来管理应用左上角的导航按钮的行为。...比如,当您在最顶层的目的页面时,就不会显示回退按钮,因为没有更高层级的页面。 默认情况下,您应用的最初页面是唯一的最顶层目的页面,但是您也可以定义多个最顶层目的页面。...android:id="@+id/nav_host_fragment" android:name="androidx.navigation.fragment.NavHostFragment

    3K30

    Android中如何动态的实现设置全屏和退出全屏

    在我们的开发过程中,实现Activity全屏的效果经常遇见,当然我相信大家都肯定使用过,估计也会用,但是推出全屏的方法估计大家应该大多数人没有用过。...在这里我就给大家介绍一下,如何动态的实现设置全屏和退出全屏吧! [1]....[代码] 实现全屏函数: private void setFullScreen(){ getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN...[代码] 退出全屏函数: private void quitFullScreen(){ final WindowManager.LayoutParams attrs = getWindow().getAttributes...,在评论的下面留言自己最想知道的一些教程或者需要讲解的代码有哪些,我好有针对性的给大家写一些文章,我也希望有能力的人,能够也写一些文章,分享给大家。

    3K50
    领券