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

Android Jetpack - 使用 Navigation 管理页面跳转

File」创建 xml 文件的时候,可以看到在类型里,多了一个 Navigation 的选项: image.png 创建成功后,就来到了文章开头的那个一个可视化的操作界面。....navigate(R.id.action_firstFragment_to_secondFragment) 复制代码 传参 页面的跳转少不了数据的传递,使用 Navigation,和我们原来的跳转一样...,可以通过 Bundle 来传递参数: val bundle = Bundle() bundle.putString("name", "SouthernBox") NavHostFragment...此外,还可以在 Navigation 的 xml 文件中配置传参,但这种方式目前支持的数据类型比较少,连 boolean 都不支持,而且我还碰到了 bug,所以目前不建议用。...转场动画 如果需要自定义的页面转场动画,使用 Navigation 可以很方便的实现。 这里举个例子,比如我们需要一个从右向左切入的过场动画,先创建这个动画的 xml 文件: <?

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

    Android Jetpack 之Navigation Architecture Component使用

    在刚刚结束的谷歌IO大会上,谷歌推出了Android Jetpack架构组件;正如官网所说,Android Jetpack 是一套组件、工具和指导,可以帮助您构建出色的 Android 应用。...Navigation可以帮助我们很好的处理Activity和fragment之间通过FragmentTransaction交互的复杂性。另外Navigation也可以很好的处理页面的转场效果。.../> action标签中的app:destination就是我们要加载导航的视图 当然我们也可以在导航编辑器中通过拖动来完成 ?...image 接下来我们在MainFragment中添加一个按钮来完成跳转SettingActivity xml version="1.0" encoding="utf-8"?...image 传递数据 和以前一样我们可以通过bundle传递数据 代码中手写 <fragment android:id="@+id/main2_fragment" android:name

    1.4K30

    【Android开发基础系列】Android开发学习专题

    Android的一个活动一般对应界面中的一个屏幕显示,可以理解成一个界面,每一个活动在界面上可以包含按钮、文本框等多种可视的UI元素。     ...行为将在源代码文件TestEvent1.java中实现,这部分的代码如下所示:         在创建的过程中,通过findViewById获得各个屏幕上面的控件(控件)的背景,这里使用的R.id.button1...触摸屏和滚动球事件主要通过实现以下2个函数来接收:         本例介绍另外触摸屏事件的程序,这个程序在UI的界面中,显示当前的MotionEvent的动作和位置。...在Android中使用对话框,可以在没有Activity的情况下建立一个比较简易的窗体,基本界面可以通过直接设置得到,通过setView()可以获得任意内容的界面。...通过在AndroidManifest.xml中设置样式,也可以控制活动的外观,所设置的样式可以基于预定的样式,也可以自定义样式。

    33320

    Jetpack:新一代导航管理Navigation

    前言 不知道小伙伴们是否注意到,用AS创建一个默认的新项目后,MainActivity已经有了很大的不同,最大的区别就是新增加了两个Fragment,同时我们注意到这两个Fragment之间跳转的时候并没有使用之前...在导航试图中,我们可以通过添加activity/fragment等标签手动添加页面,也支持在Design页面中通过界面添加,如下: 注意:这样添加后手动修改一下label。...示例中添加了两个页面,添加后代码如下: xml version="1.0" encoding="utf-8"?...注意首先通过findNavController()来获取一个NavController对象,然后调用它的navigate函数即可,当然这个函数有多种重载,比如可以传递参数,如下: public void...除此之外,Google还提供了Safe Args Gradle插件,该插件可以生成简单的对象和构建器类,这些类支持在目的地之间进行类型安全的导航和参数传递。

    90520

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

    , 调用该方法 , 可以在页面跳转时 , 传递一个 Bundle 参数 , 其中可以封装一系列的参数键值对 ; public open fun navigate(@IdRes resId: Int,...中定义要传递的 argument 参数信息 如果要从 FragmentB 跳转到 FragmentA 页面时 , 传递数据 , 就将参数信息设置在该 FragmentB 对应的配置文件中 ; 参数格式为...FragmentB 的完整代码 ; 6、FragmentA 中获取参数 在 FragmentA 中 , 调用 getArguments 函数 , 获取页面跳转传递的 Bundle 对象即可 ;...onClick="onClick" /> IV、navigation_graph.xml 配置 在 res 目录下 , 创建 navigation 目录 , 然后在该目录中创建..., age = 18 在 FragmentB 页面点击 " 跳转到 A " 按钮 , 使用安全方式传递的参数 , 也能正常打印出来 ; 代码地址 : CSDN ( 本博客代码快照 | 推荐下载 0

    55820

    安卓入门-第二章-探究活动

    具体的按钮的属性既可以再XML文本文件中读出,也可以通过可视化布局编辑器中选中按钮后点击Attributes来进行属性的查看: ? ?  ...在界面的最顶部是一个标题栏,里面显示着我们刚才在注册活动时指定的内容。标题栏的下面就是在布局文件first_layout.xml中编写的界面,可以看到我们刚刚定义的按钮。...,可以通过findViewById()方法获取到在布局文件中定义的元素,这里我们传入R.id.button_1 ,来得到按钮的实例,这个值是刚才在first_layout.xml中通过android:id...创建一个菜单的步骤小结: 在res中创建一个menu文件夹 -> 在文件夹中新建一个Menu resource file XML文件-> 在XML文件中创建菜单的相关元素 -> 活动中重写显示菜单的方法...对于使用standard模式的活动,系统不会在乎这个活动是否已经在返回栈中存在,每次启动都会创建该活动的一个新的实例。

    3K20

    1. Jetpack源码解析---看完你就知道Navigation是什么了?

    基本使用 虽然在之前的文章中已经很详细的介绍了Navigation,但是这里也简单的叙述一下我在项目中的具体使用: 2.1 Navigation+DrawerLayout+ToolBar 我们可以通过使用...打开Text模式的xml我们可以看到我们选择的Fragmengt配置信息,当然你也可以不通过面板设计,也可以直接在xml里进行代码编写。...我们可以在naviagtion布局中使用标签, name是我们传参的key argType是参数类型 defaultValue默认值 nullable 是否可空 <argument android...**注意:**当然type类型也支持我们自定的实体类,但是需要你填写类的全路径,同时你要保证实体类实现了序列化 我们可以通过把参数传递封装到Bundle中,然后再执行navigate()方法时传递过去...没错,就是我们在xml布局中设置的那一个。

    2.2K20

    1. Jetpack源码解析---看完你就知道Navigation是什么了?

    基本使用 虽然在之前的文章中已经很详细的介绍了Navigation,但是这里也简单的叙述一下我在项目中的具体使用: 2.1 Navigation+DrawerLayout+ToolBar 我们可以通过使用...打开Text模式的xml我们可以看到我们选择的Fragmengt配置信息,当然你也可以不通过面板设计,也可以直接在xml里进行代码编写。...我们可以在naviagtion布局中使用标签, name是我们传参的key argType是参数类型 defaultValue默认值 nullable 是否可空 <argument android...**注意:**当然type类型也支持我们自定的实体类,但是需要你填写类的全路径,同时你要保证实体类实现了序列化 我们可以通过把参数传递封装到Bundle中,然后再执行navigate()方法时传递过去...没错,就是我们在xml布局中设置的那一个。

    2.6K30

    Android_Jetpack组件---Naviagtion源码解析

    基本使用 虽然在之前的文章中已经很详细的介绍了Navigation,但是这里也简单的叙述一下我在项目中的具体使用: 2.1 Navigation+DrawerLayout+ToolBar 我们可以通过使用...打开Text模式的xml我们可以看到我们选择的Fragmengt配置信息,当然你也可以不通过面板设计,也可以直接在xml里进行代码编写。...我们可以在naviagtion布局中使用标签, name是我们传参的key argType是参数类型 defaultValue默认值 nullable 是否可空 <argument android...**注意:**当然type类型也支持我们自定的实体类,但是需要你填写类的全路径,同时你要保证实体类实现了序列化 我们可以通过把参数传递封装到Bundle中,然后再执行navigate()方法时传递过去...没错,就是我们在xml布局中设置的那一个。

    2.2K10

    用户界面开发基础

    其他一些常用的属性 android:label AndroidMainfest.xml中在application和activity中都可以设置android:lable。...在Android中传递数据的方法很多,介绍4中比较常用的数据传递方法 通过Intent传递数据 通过静态(static)变量传递数据 通过剪切板(Clipboard)传递数据 通过全局变量传递数据 --...这个类和Activity一样,由系统自动创建,因此,必须要有一个无参的构造方法。...这样在Activity中就不用创建按钮对象而处理按钮单击事件了。 如果在程序中只处理单击事件,而不直接引用相应的对象,可以采用这种方法。...在不同的XML布局文件中可以存在相同ID的视图,但是在同一个XML文件中,虽然也可以有相同ID的视图,但是通过ID获取视图时,只能够获取按照定义的顺序的第一个视图对象,其他相同ID值的视图对象将无法回去

    1.8K20

    《移动互联网技术》第五章 界面开发: 掌握Activity的基本概念,Activity的堆栈管理和生命周期

    Java匿名类 在QuizActivity的onCreate函数中,通过调用按钮checkAnswerBtn的setOnClickListener()函数来设置onClick监听器。...在布局文件中摆放好界面控件,接着在活动的创建函数中调用setContentView函数来设置界面的布局,通过这种方式就把界面的表示层(View)与交互(Controller)的逻辑层联系在了一起。...通过这种方式,创建一个视图,用户可以通过移动手或鼠标在视图上绘制任意的图形。...然后,创建选项菜单,让用户可以选择各种绘制参数。在活动的onCreate函数中,首先,创建DisplayMetrics对象,通过它来获取与屏幕相关的信息。...通过start函数来启动帧动画。函数编写好以后,还需要在活动的onCreate函数中调用该函数。运行程序,就可以看到动画播放效果,并且可以通过播放和停止按钮控制动画运行。

    22410

    SouapUI接口测试之入门示例

    通过一个易于使用的图形界面和企业级功能,SoapUI让您轻松, 快速创建和执行自动化功能、回归、合规和负载测试。在一个测试环境,SoapUI提供完整的测试覆盖,并支持所有的标准协议和技术。...替换成电视台ID66,点击运行按钮,就会出现右侧面板中的结果,获得频道列表,如下图所示: 参数查询 四、构建测试用例 1.创建测试套件:选择项目“ChinaCTV”右键点击“New TestSuite”...添加成功后的请求 4.运行测试:打开TestCase窗口,点击绿色运行按钮即可,绿色表示运行成功,运行结果在右面板下方,如下图所示: 运行测试用例 5.增加检查点 ①在测试步骤中打开服务求请求,如下图所示...Assertions”窗口中可以看到“Contains - VALID”说明检查点是有效的,如下图所示: 查看检查点是否有效 五、接口之间传递参数,组织测试步骤 getAreaDataSet:获得支持的省市...2.在TestCase Log中还可以看到接口之间传递的参数值,如下图所示: 在接口中查看参数值 3.运行结束后,再打开接口请求,可以看到请求显示的就是所传递的值,如下图所示:

    1.9K20

    android学习笔记----隐式意图和显式意图

    显式意图安全一些,隐式意图可以通过匹配intent-filter里面的标签对应来跳转到相应的页面 。...activity回传数据给第一个activity 实验要求:编程实现具有“登录”按钮的主界面,点击“登录”按钮后打开另一个新的Activity,在新打开的Activity中输入的用户名、密码等个人信息,...由于在一个活动中有可能调用startActivityForResult()方法去启动很多不同的活动,每一个活动返回的数据都会回调到onActivityResult()这个方法中,因此我们首先要做的就是通过...这个activity接着在Manifest中添加android:name=".ResultActivity" />就行了 activity_result.xml 中);提示:可以使用ListView分多行显示数据,每行显示一条记录; (c) 当点击“清除显示”按钮时,清除当前正在输入的数据,即清空“姓名、年龄和身高”这三个控件中的输入

    1.4K10

    Navigation的用法

    Graph中的Fragment正是通过NavHostFragment进行展示的   NavController:导航控制器,用于在代码中完成Navigation Graph中具体的页面切换动作   它们三者之间的关系可以通过下面的这段话来理解...的design面板,可以看到下面的内容:      3.创建destination       单击上图中的加号按钮,然后再点击create new destination即可创建新的Fragment...我们希望MainFragment的ActionBar右边有一个按钮,通过该按钮可以跳转到SecondFragment。...而在SecondFragment的ActionBar左侧有一个返回按钮,通过该按钮,可以返回MainFragment。...我们可以通过下面的方式实现:   我们在res下新建一个menu菜单,然后添加一个menu_settings.xml文件,内容如下: <?

    30320

    Android Notification使用

    用户可以通过单指向上/向下滑动的手势来展开通知。还支持以按钮的形式向通知添加其他操作。 允许用户在设置中按应用关闭通知。 2....二、创建项目 新建一个名为NotificationStudy的项目,如下图所示:   点击Finish完成项目创建,然后在app的build.gradle中的android{}闭包中开启viewBinding...//内容 }.build() }   这里首先通过版本判断检查是否需要创建通知渠道,然后会得到一个通知的Builder,通过Builder去配置通知所需要的基本参数,这里我设置了图标...intent中携带的参数显示在TextView上,假设我们在MainActivity中点击时传递title和content。...中调用 然后我们在activity_main.xml中新增一个按钮: <Button android:id="@+id/btn_show_custom" android

    2.8K20

    AndroidStudio制作登录和注册功能的实现,界面的布局介绍

    drawable/go_back_selector",其实就是在drawable中创建这个go_back_selector.xml文件而已,用到了android:state_pressed="true"...登录界面布局 创建登录界面,我们需要标题栏显示“登录”,那么就要通过标签。...当在注册界面点击注册按钮后,需要获取用户名,用户密码和再次确认密码,当两次密码相同时,将用户名和密码(经过 MD5 加密)保存到 SharedPreferences 中,同时当注册成功后,需要将用户名传递到登录界面中...当点击登录按钮时,需判断用户名和密码是否为空。...若为空,则提示请输入用户名或密码,这里的判断事项比较一开始凌乱,需要细细品味;若不为空,则获取用户输入的用户名,由于用的是本地数据,需要根据用户名在 SharedPreferences 中查询是否有对应的密码

    12.5K30
    领券