鸿蒙-No pending exception expected: java.lang.RuntimeException: Parcel:

在学习鸿蒙开发时,遇到使用Intent封装自定义对象到list中进行页面跳转时出现Parcelable异常。问题解决关键在于不仅集合需要序列化,集合内的元素也必须实现序列化。完成序列化后,成功解决了数据传递问题。
摘要由CSDN通过智能技术生成

问题描述

学习鸿蒙开发,在利用intent封装数据,这里我是自定义了1个实体对象,然后作为list的元素,封装list,进行页面跳转时,总报下列异常:

A/com.example.ex: thread.cc:2560] No pending exception expected: java.lang.RuntimeException: Parcel: unable to marshal value com.example.ex1.entity.Student@e544bb0
    thread.cc:2560]   at void android.os.Parcel.writeValue(java.lang.Object) (Parcel.java:1791)
    thread.cc:2560]   at void android.os.Parcel.writeList(java.util.List) (Parcel.java:1048)
    thread.cc:2560]   at void android.os.Parcel.writeValue(java.lang.Object) (Parcel.java:1738)
    thread.cc:2560]   at void android.os.Parcel.writeArrayMapInternal(android.util.ArrayMap) (Parcel.java:931)
    thread.cc:2560]   at void android.os.BaseBundle.writeToParcelInner(android.os.Parcel, int) (BaseBundle.java:1588)
A/com.example.ex: thread.cc:2560]   at void android.os.Bundle.writeToParcel(android.os.Parcel, int) (Bundle.java:1253)
    thread.cc:2560]   at void android.os.Parcel.writeBundle(android.os.Bundle) (Parcel.java:1000)
    ...

问题解决

查询之后发现是因为没有序列化,在添加序列化后还是报上述错误,之后才发现不仅集合list要序列化,里面的元素也要序列化,最后成功跳转。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值