我需要通过一个包传递对完成我大部分处理的类的引用。
问题在于它与 Intent 或上下文无关,并且有大量的非原始对象。如何将类打包成可打包/可序列化并将其传递给 startActivityForResult
?
最佳答案
您还可以使用 Gson 将对象转换为 JSONObject 并将其传递给 bundle。对我来说,这是我发现的最优雅的方式。我还没有测试过它对性能的影响。
在初始 Activity 中
Intent activity = new Intent(MyActivity.this,NextActivity.class);
activity.putExtra("myObject", new Gson().toJson(myobject));
startActivity(activity);
在下一个 Activity 中
String jsonMyObject;
Bundle extras = getIntent().getExtras();
if (extras != null) {
jsonMyObject = extras.getString("myObject");
}
MyObject myObject = new Gson().fromJson(jsonMyObject, MyObject.class);
关于android - 如何通过 bundle 发送对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4249897/