多叉树writeToParcel造成死循环

多叉树对象,保存了parent,也保存了children集合。
writeToParcel的时候,会导致 子A调父B-》父B child又调子A-》子A调父B-》父B child又调子A
。。。。无限循环,
出现TransactionTooLargeException异常,爆栈。

解决办法:

@Override
public void writeToParcel(Parcel dest, int flags) {
if(isWritingParcel) return;
isWritingParcel = true;

dest.writeInt(this.mId);
//.....
}

你可能感兴趣的:(android,java)