注意上面在writeToParcel()方法中我用了一个dest.writeList(trackList);来传递一个List。相对应的读取里面,有这段代码:
// 必须实例化 model.trackList = new ArrayList<TrackModel>(); source.readList(model.trackList, getClass().getClassLoader());这里要想读出存放进去的List,就必须先将List实例化,否则就读不出来数据。这是我在查看Android的源码后发型的,对于数据的读写,系统提供了一个比较全的读取方法是readValue,这个方法中,系统会自动进行数据匹配的,但是具体的使用,大家可以去尝试,只要明白读写的方式后,就不难实现了。
上面是一个唯一需要特别注意的地方。其余的数据类型该怎么传递,大家可以尝试。
相关文件下载地址在Linux公社的1号FTP服务器里,下载地址:
FTP地址:ftp://www.linuxidc.com
在 2011年LinuxIDC.com\8月\Android:复杂数据模型的传递