如何将 JSON 数据从 ListView 传递到新的 activity

How to pass JSON data from ListView to new activity

我创建了一个 ListView,其中填充了 JSON 数据,并且我包含了 OnItemClickListener 以打开一个新的 ActivityIntent。我想要做的是让新 Activity 根据我在 ListView.

中单击的项目生成数据

例如,如果我在 ListView 中单击来自 JSON 字段名称 JohnDoe 的项目,我想生成包含来自另一个 JSON 数据文件的信息的页面。具体的例子就像 Google Play 商店。

我点击某个应用程序,它会打开一个页面,其中包含有关该应用程序的填充信息。

编辑:我试过传递对象 link,但它不起作用。我在 class 中有 getter 和 setter,然后我在主 class.

中解析它

此处示例:

  JSONObject obj = response.getJSONObject(i);
                                    Movie movie = new Movie();
                                    movie.setTitle(obj.getString("title"));

如果对象实现了 Parcelable:

,您可以将对象作为参数发送给另一个 activity

A typical implementation of Parcelable here

然后,发送像这样的参数:

Intent intent = new Intent(this, DetailMovieActivity.class);
intent.putExtra("key", movie);//Your object that implements Parcelable
startActivity(intent);

在另一个 activity:

Bundle arguments = new Bundle();
Movie movie = getIntent().getParcelableExtra("key"));//Receive object

祝你好运!

如果您不喜欢 Parcelable 方法或不知道该怎么做,您可以简单地将 JSONObject 作为字符串传递,如 here 所述。

您唯一需要担心的是在 OnItemClickListener 中检索正确的 JSONObject。