从 JSON 中获取数据到 Activity 中的列表,然后将列表传递给 Activity 中的 3 个片段

Fetching data form JSON to a list in Activity and then pass list to 3 fragment in Activity

我有一个 Activity 和三个标签,每个标签都有自己的 Fragment。我正在将 JSON 中的视频信息加载到 Activity 中的列表中。

我从列表中读取 URL 视频并将其显示在 Activity 布局的上半部分,我在下半部分有三个 Fragment,第一个 Fragment显示有关视频、第二个、相关视频和第三个评论的信息。

问题是: 我想在选项卡中将列表从 Activity 发送到 3 Fragments

我做了很多方法,使用接口、回调……但是在从 url 获取 JSON 数据之前,Fragments 开始,当这种情况发生时,空列表想要设置为 TextViews,EditTexts,ImageViews,... Fragment,然后应用程序停止。

如何从JSON获取数据然后加载Fragments?要么 如何同时加载数据到Activity本身和所有Fragments?要么 我可以分别在 activity 和 3 Fragments 中获取 JSON,但我不想那样做!

请给我一个教程或一篇文章来学习这门学科。

在您的片段中注册回调侦听器。

在你的activity中加载JSON数据,并将相应的数据设置为静态变量。

现在,当您在解析 JSON 后设置静态变量中的值时,片段中会触发回调侦听器。

在片段的回调方法中,设置来自静态变量的数据。

更新:

您还可以将回调侦听器方法中的数据传递给片段,而不是使用静态变量。

最好的方法是通过接口实现,并添加额外的,但如果您不成功,可以使用以下方法:

1.You 可以使用 事件总线 来集成此功能

https://github.com/greenrobot/EventBus

  1. 其次,您可以通过在 parent activity 上创建 public getter setter 方法 和通过 parent activity 类型 context/object.
  2. 在片段上调用它们