Java 地块:无法封送值向量3
我试图将一个包含arraylist的模型对象从一个活动传递到另一个活动,但似乎我错过了Parcelable类或intent之类的内容 这是我得到的错误:Java 地块:无法封送值向量3,java,android,android-intent,parcelable,Java,Android,Android Intent,Parcelable,我试图将一个包含arraylist的模型对象从一个活动传递到另一个活动,但似乎我错过了Parcelable类或intent之类的内容 这是我得到的错误: java.lang.RuntimeException: Parcel: unable to marshal value Vector3 <x, y, z>: <-0.5, -0.5, 0.0> 第二项活动 ... Intent intent = getIntent(); model= intent.getParcela
java.lang.RuntimeException: Parcel: unable to marshal value Vector3 <x, y, z>: <-0.5, -0.5, 0.0>
第二项活动
...
Intent intent = getIntent();
model= intent.getParcelableExtra("points");
surf = model.surfaces.toArray(new Stack[model.numSurfaces()]);
...
非常感谢您的帮助。什么是
Vector3
?。在任何情况下,错误都会清楚地表明该类不可打包。请为其他模型类(如Info
)实现可打包,以便在编组model
类的parcelable
对象时调用Info.CREATOR
。每个模型类通过提供一个Creator
实例来处理自己的编组和解编组。如果您需要,我可以提供一个示例。Vector3只是Rajawali库类中的一个向量类。顺便说一句,我将尝试为Info类实现Parcelable,但我不知道是否可以为Stack实现同样的功能,因为它是来自androidapi的Java类
...
Model model= new Model(surfaces);
Intent intent = new Intent(this, EditorPresenter.class);
intent.putExtra("model", model);
startActivity(intent);
...
Intent intent = getIntent();
model= intent.getParcelableExtra("points");
surf = model.surfaces.toArray(new Stack[model.numSurfaces()]);
...