如何将bean类的一个活动传递给android上的另一个活动

RVG*_*RVG 1 android

嗨,这是我的 onClicklister 列表视图。

当我单击列表项时,我将从 bean 类一个活动获取的数组列表传递到另一个活动,如下所示。

但我想知道我们可以将 bean 类传递给下一个活动吗?

listViewRoutes.setOnItemClickListener(new OnItemClickListener() {
      public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
          long arg3) {
        RouteBean bean = routeList.get(arg2);
        ArrayList<Double> fromLatitude = bean.getFromLatitude();
        ArrayList<Double> fromLongitude= bean.getFromLongitude();
        ArrayList<Double> toLatitude = bean.getToLatitude();
        ArrayList<Double> toLongitude= bean.getToLongitude();
        Intent intent =new Intent("MapActivityView");
        intent.putExtra("fromLon", fromLongitude);
        intent.putExtra("fromLat", fromLatitude);
        intent.putExtra("toLat", toLatitude);
        intent.putExtra("toLon", toLongitude);
        startActivity(intent);
      }
    });
Run Code Online (Sandbox Code Playgroud)

如果我通过“Route Bean”,我将获得下一个活动的值。

是否可以通过 bean 类?

use*_*305 5

您可以使用Parcelable类传递您的对象。

就像是,

public class RouteBean implements Parcelable {

}
Run Code Online (Sandbox Code Playgroud)

一旦您实现Parcelable了对象,只需将它们放入您的 Intent 中即可putExtra()

Intent i = new Intent();
i.putExtra("object", Parcelable_Object);
Run Code Online (Sandbox Code Playgroud)

然后你可以把它们拉回来getParcelableExtra()

Intent i = getIntent();
RouteBean bean = (RouteBean) i.getParcelableExtra("object");
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请查看此 SO 问题How to pass an object from an Activity to another on Android