WEBVTT 00:00:00.230 --> 00:00:02.910 在我们的代码中 我们将通过 onCreate 方法初始化 00:00:02.910 --> 00:00:05.950 占位符 Fragment 内的适配器 00:00:05.950 --> 00:00:09.160 因为我们希望在此处为 ListView 填充数据 00:00:09.160 --> 00:00:13.555 我们将使用 ArrayAdapter 并且可以通过四个参数对其进行初始化: 00:00:13.555 --> 00:00:14.693 Context 00:00:14.693 --> 00:00:16.557 列表项布局的 ID 00:00:16.977 --> 00:00:20.041 该列表项布局内的文本视图的 ID 00:00:20.041 --> 00:00:21.885 以及数据列表 00:00:21.885 --> 00:00:24.870 现在 我们将逐一介绍每个参数 00:00:24.870 --> 00:00:29.670 首先 Context — 它包含有关应用环境的全局信息 00:00:29.670 --> 00:00:33.000 它允许我们访问系统服务和资源 00:00:33.000 --> 00:00:37.230 以及我们已定义的应用程序特定资源 00:00:37.230 --> 00:00:40.720 我们将包含 activity 的 Fragment 作为 Context 00:00:40.720 --> 00:00:44.490 所以 我们将为这里的参数调用 getActivity 00:00:44.490 --> 00:00:47.890 由于适配器需要了解每个列表项的布局 00:00:47.890 --> 00:00:51.370 因此需要引用我们已定义的 XML 布局 00:00:51.370 --> 00:00:56.500 R.java 类是为我们的资源创建人类可读标识符 00:00:56.500 --> 00:00:58.030 的生成文件 00:00:58.030 --> 00:01:02.860 对于列表项布局 我们在代码中将其引用为 R.layout.list_item_forecast 00:01:03.490 --> 00:01:06.996 这是我们之前创建的 XML 文件的名称 00:01:07.876 --> 00:01:11.400 接下来 数组适配器需要了解 如何提取天气预报字符串 00:01:11.400 --> 00:01:13.850 并将其设置为在文本视图中显示 00:01:13.850 --> 00:01:17.474 现在 你传入我们之前在列表项布局中定义的 00:01:17.474 --> 00:01:18.978 文本视图的 ID 00:01:19.392 --> 00:01:22.009 尽管这两个资源 ID 看起来很相似 00:01:22.009 --> 00:01:26.106 但一个是以 R.layout 开头 另一个是以 R.id 开头 00:01:26.106 --> 00:01:32.133 R.layout 是指布局文件 ID 则是指具有匹配 ID 属性的 00:01:32.133 --> 00:01:34.574 特定 XML 元素 00:01:34.574 --> 00:01:36.772 最后 我们传入 weekForecast 00:01:36.772 --> 00:01:40.350 它是我们之前定义的预报数据的数组列表 00:01:40.350 --> 00:01:42.450 现在请继续初始化你的适配器 00:01:42.450 --> 00:01:44.370 完成时选中此方框