WEBVTT

00:00.380 --> 00:09.100
我们学习了如何创建导航图, 如何创建目的地, 以及如何使用操作链接这些目的地｡

00:09.110 --> 00:14.930
在本视频中, 我们将学习如何使用导航控制器在目的地之间导航｡ 

00:14.930 --> 00:20.210
让我们移动到第一个片段, 在这里我将删除不必要的代码｡ 

00:20.210 --> 00:25.640
保留Oncreate视图方法和作为构造函数的第一个片段｡ 

00:25.640 --> 00:34.100
删除所有这些代码, 在这里, 为了在Oncreate视图方法中添加代码, 我需要创建一个视图实例,

00:34.100 --> 00:37.970
并通过充气机对其进行初始化｡

00:37.970 --> 00:42.800
所以剪切这一行, 添加一个视图并返回视图｡ 

00:42.800 --> 00:45.740
这使得我们可以添加更多的代码｡ 

00:45.740 --> 00:51.080
在这里我将初始化这个按钮的id btn一｡ 

00:51.080 --> 00:53.060
对于这个按钮｡ 

00:53.060 --> 00:54.500
按钮等于｡ 

00:54.500 --> 01:02.450
要按ID或视图点查找视图, 请按ID或查找视图｡  id dot button one Alt+.

01:02.450 --> 01:10.250
输入以导入按钮类和按钮点集单击侦听器单击侦听器上的新视图｡ 

01:10.250 --> 01:13.130
我将处理此按钮上的单击事件｡ 

01:13.130 --> 01:19.730
导航控制器是管理应用内导航的核心组件｡ 

01:19.730 --> 01:30.020
它负责处理导航图中定义的导航操作, 并控制目的地的回栈｡

01:30.020 --> 01:43.790
您可以通过各种方式获得对导航控制器的引用, 例如通过导航主机片段或使用导航点查找导航控制器方法｡

01:43.790 --> 01:51.230
所以我会用导航点查找导航控制器的方法｡ 

01:51.260 --> 01:59.210
您可以使用navigation dot find nav controller来获取与当前导航主机片段相关联的nav

01:59.240 --> 02:01.040
controller｡

02:01.040 --> 02:09.230
这通常用于希望从UI元素（如按钮）触发导航的情况｡ 

02:09.240 --> 02:12.560
完全符合这个案子｡ 

02:12.560 --> 02:22.010
因此, 在我们的示例中, 我们需要通过处理此按钮上的单击事件来触发一个操作以转到下一个目的地｡

02:22.010 --> 02:26.750
为此, 我将使用导航点找到导航控制器的方法｡ 

02:26.750 --> 02:31.430
在这里我需要通过视图v点导航｡ 

02:31.430 --> 02:37.220
此方法允许您触发导航操作以在目的地之间移动｡ 

02:37.220 --> 02:43.940
例如, 可以使用navigate方法从一个导航目的地移动到另一个导航目的地｡ 

02:43.940 --> 02:47.540
在这里我指定r｡  id点｡ 

02:47.570 --> 02:54.380
我需要从第一个片段到第二个片段, 所以我用这个id｡ 

02:54.410 --> 02:57.470
这是操作, 操作的ID｡ 

02:57.470 --> 03:07.010
所以如果我们回到导航图, 从第一个片段到第二个片段的第一个动作有一个ID动作｡

03:07.010 --> 03:08.210
第一个碎片

03:08.210 --> 03:09.350
第二个碎片｡ 

03:09.350 --> 03:11.060
让我们测试一下我们的应用程序｡ 

03:11.060 --> 03:13.910
点击转到下一个目的地按钮｡ 

03:13.910 --> 03:15.200
开始了

03:15.200 --> 03:16.760
这是我们的第二个片段｡ 

03:16.760 --> 03:23.810
现在让我们以实现和处理click事件的相同方式实现第二个片段｡ 

03:23.810 --> 03:26.530
回到第一个目的地按钮｡ 

03:26.540 --> 03:32.600
转到第二个片段, 然后删除所有这些代码｡ 

03:35.710 --> 03:36.730
还有这里

03:38.130 --> 03:40.890
创建新视图等于｡ 

03:43.170 --> 03:44.650
返回视图｡ 

03:44.670 --> 03:46.350
初始化按钮｡ 

03:50.400 --> 03:54.300
我需要在这里为按钮添加一个ID｡ 

04:00.190 --> 04:08.620
同样, 我将使用navigation dot find nav控制器, 传递view dot navigation方法｡ 

04:08.620 --> 04:15.640
这里我需要把动作的ID第二个片段传递给第一个片段｡ 

04:15.640 --> 04:17.020
运行应用程序｡ 

04:17.020 --> 04:18.070
开始吧

04:18.070 --> 04:22.090
回到第一个目的地, 恭喜！

04:22.090 --> 04:26.830
我们学会了如何在目的地之间导航｡ 
