小编mtp*_*ret的帖子

在Intent/bundle中放在一起的一些parcelables对象可能会干扰自己并破坏对Intent/Bundle的读取?

在Intent/bundle中放在一起的一些parcelables对象可能会干扰自己并破坏对Intent/Bundle的读取?

我提取代码,我认为,存在问题.此代码有效:

public void writeToParcel(Parcel arg0, int arg1) {
    arg0.writeParcelable(object1, arg1);
    arg0.writeTypedList(arraylist1); 

}

public void readFromParcel(Parcel in) {
    object1  = in.readParcelable(object1.class.getClassLoader());
    arraylist1 = new ArrayList<object3>();
    in.readTypedList(arraylist1, object3.CREATOR);
   }
Run Code Online (Sandbox Code Playgroud)

但是如果我添加一个其他复杂的parcelable对象(带有intern parcelable ArrayList):

public void writeToParcel(Parcel arg0, int arg1) {
    arg0.writeParcelable(object1, arg1);
    arg0.writeParcelable(object2, arg1);
    arg0.writeTypedList(arraylist1); 

}

public void readFromParcel(Parcel in) {
    object1  = in.readParcelable(object1.class.getClassLoader());
    object2 = in.readParcelable(object2.class.getClassLoader());
    arraylist1 = new ArrayList<object3>();
    in.readTypedList(arraylist1, object3.CREATOR);
   }
Run Code Online (Sandbox Code Playgroud)

我为arraylist1(或其他难以理解的问题)获得了更多10000000个元素的boucle

虽然如果我用arraylist1删除行,它可以工作:

public void writeToParcel(Parcel arg0, int arg1) {
    arg0.writeParcelable(this.object1, arg1);
    arg0.writeParcelable(this.object2, arg1); 

}

public void readFromParcel(Parcel in) …
Run Code Online (Sandbox Code Playgroud)

java android bundle parcelable android-intent

6
推荐指数
1
解决办法
6059
查看次数

标签 统计

android ×1

android-intent ×1

bundle ×1

java ×1

parcelable ×1