android - 使用 Async Http 下载数据后将数据发送到 Fragments

标签 android android-fragments android-async-http

我正在 Activity 中使用 Async Http 解析 JSON。一旦数据成功解析,我希望它可用于 Activity 持有的两个 fragment 。一个 fragment 是显示下载数据的 ListView,另一个 fragment 是显示数据的 Google MapView - 这并不重要。

下载数据后:

@Override
public void onSuccess(int statusCode, Header[] headers, String responseString) {
    // Data downloaded
}

我想将其发送到这两个 fragments 并使用数据更新 Map 和 ListView

因此,我想在这两个 fragment 中实现某种监听器,以监听 "onSuccess" 的发生,然后使用它检索到的数据。

因此,如果 onSuccess 发生在 Fragments 实例化之前,它们将立即显示数据。如果没有,他们就会等待。

有人可以帮我实现这个吗?我不知道如何具体解决这个问题。

最佳答案

您有以下选择:

  • 使用EventBus并将数据发送到两个 fragment
  • 将数据存储在 Activity 中,使用 LocalBroadcasrManager 并发送 广播这将使 fragment 知道数据已被 从 fragment 下载并访问数据,即 ((MyActivity)getActivity()).getData();

关于android - 使用 Async Http 下载数据后将数据发送到 Fragments,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29743827/

相关文章:

java - FragmentPagerAdapter 在重新选择时返回半中断 View

java - 即使在调用cancel之后,倒数计时器的onTick方法仍然被调用

Android 能够获取 google.com,但不能获取任何其他网页

android - 无法解析符号 AsyncHttpClient

java - Android文件上传使用loopj HttpClient

android - 使用原始查询从 Android 中的 SQLite 获取更新的行数?

android - Instanceof 不返回正确答案

android - Viewpager fragment 变成空白

android - 在android中使用共享首选项存储密码

android - noHistory 与 finish() - 哪个是首选?