Activity 之间 传递 List 封装的对象或者对象
项目中遇到 从也个页面向还有一个页面跳转传递一个List 封装的对象 。按网上查的资料 须要把 对象 实现 Serializable接口。
写了一下。可是跳转直接崩溃。一直看错误之日找不到原因后来自习教案代码,发现bean里面还有其它bean。对象里的对象没有 进行序列化。记录分享一下。
代码例如以下:
两个Bean 文件
import java.io.Serializable;
import java.util.List; /** * ${JHS}
*/ public class KnowledgeClassifyChildBean implements Serializable { /**
* 知识点ID *
*/
public String knowledgeId;
/**
* 知识点名称
*/
public String knowledgeName;
/**
* 知识点题数
*/
public int Sum;
public boolean isSelect = false; }
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List; /** * ${JHS}
*/ public class KnowledgeClassifyBean implements Serializable { /*
{
"knowledgeId": 387,//知识点ID
"knowledgeName": "认识立体几何图形",//知识点名称
"Sum":15 //知识点题数
*/
private static final long serialVersionUID = 1L; /**
* 章节ID *
*/
public String chapterId;
/**
* 章节名称
*/
public String chapterName;
public boolean isSelect = false;
<span style="background-color: rgb(255, 0, 0);"> public List<KnowledgeClassifyChildBean> knowledgeList = new ArrayList<KnowledgeClassifyChildBean>();</span> }
Activity 之间传 List<KnowledgeClassifyBean >
KnowledgeClassifyBean mKnowledgeClassifyBean ;
List<KnowledgeClassifyBean> knowledgeClassifyBeanList = new ArrayList<KnowledgeClassifyBean>();
for (int i = 0; i < 6; i++) {
mKnowledgeClassifyBean = new KnowledgeClassifyBean();
mKnowledgeClassifyBean.chapterName = "章节名称 " + i + i;
for (int j = 0; j < 6; j++) {
KnowledgeClassifyChildBean mKnowledgeList = new KnowledgeClassifyChildBean();
mKnowledgeList.knowledgeName = " 名称 " + j;
mKnowledgeClassifyBean.knowledgeList.add(mKnowledgeList);
}
knowledgeClassifyBeanList.add(mKnowledgeClassifyBean);
}
Intent intent = new Intent(A.this, B.class);
if (knowledgeClassifyBeanList != null) {
intent.putExtra("knowledgeClassifyBeanList", (Serializable) knowledgeClassifyBeanList);
startActivity(intent);
}
B这边 Activity 接收
Intent intent = getIntent();
List<KnowledgeClassifyBean> knowledgeClassifyBeanList = ( List<KnowledgeClassifyBean>) intent.getSerializableExtra("knowledgeClassifyBeanList");
Log.i("-----knowledge--" ,knowledgeClassifyBeanList.size() + "");
Activity 之间传递对象也是实现 Serializable 接口
KnowledgeClassifyBean knowledgeClassifyBean = new KnowledgeClassifyBean();
intent.putExtra("knowledgeClassifyBean ",
knowledgeClassifyBean );
接收的Activity
Intent intent = getIntent();
KnowledgeClassifyBean knowledgeClassifyBean =
(KnowledgeClassifyBean
)intent.getSerializableExtra("knowledgeClassifyBean ");
Activity 之间 传递 List 封装的对象或者对象的更多相关文章
- Android基础 -- Activity之间传递数据(bitmap和map对象)
原文:http://blog.csdn.net/xueerfei008/article/details/23046341 做项目的时候需要用到在2个activity之间传递一些数据,之前做的都是些字符 ...
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
http://blog.csdn.net/cjjky/article/details/6441104 在Android中的不同Activity之间传递对象,我们可以考虑采用Bundle.putSeri ...
- Activity之间传递数据或数据包Bundle,传递对象,对象序列化,对象实现Parcelable接口
package com.gaojinhua.android.activitymsg; import android.content.Intent; import android.os.Bundle; ...
- [Android学习]Activity之间传递对象和对象集合
开发过程中,Activity之间传递数据是必不可少的,android中使用Intent和Bundle作为数据载体,在Activity之间传递,对于基础数据类型,Bundle已经提供相关的put,get ...
- Android之Activity之间传递对象
在非常多时候,我们须要在Activity之间传递对象,比方当你点击了某列表的item,须要传递给下一个Activity该对象,那我们须要该怎么做呢? Android支持两种传递对象的方式.一种是bun ...
- Activity之间传递大数据问题
Android开发人员都知道,Intent适用于在不同的Activity之间传递数据,包括参数.字符串.以及序列化的对象等.但是笔者所做的项目用到了使用Intent 传递Bitmap图片对象,图片的数 ...
- 大叔也说Xamarin~Android篇~Activity之间传递数组
回到目录 我们在开发应用程序时,不可能只使用一个Layout或者一个Activity,比如你个管理系统,要求用户先登陆然后再使用,这时你至少要有两个activity吧,先登陆一个,然后成功后需要跳到别 ...
- Activity之间传递数据的方式及常见问题总结
Activity之间传递数据一般通过以下几种方式实现: 1. 通过intent传递数据 2. 通过Application 3. 使用单例 4. 静态成员变量.(可以考虑 WeakReferences) ...
- 【Android 复习】 : Activity之间传递数据的几种方式
在Android开发中,我们通常需要在不同的Activity之间传递数据,下面我们就来总结一下在Activity之间数据传递的几种方式. 1. 使用Intent来传递数据 Intent表示意图,很多时 ...
随机推荐
- neat算法——本质就是遗传算法用于神经网络的自动构建
基于NEAT算法的马里奥AI实现 所谓NEAT算法即通过增强拓扑的进化神经网络(Evolving Neural Networks through Augmenting Topologies),算法不同 ...
- POJ 1274 二分图匹配
匈牙利算法 裸题 //By SiriusRen #include <cstdio> #include <cstring> #include <algorithm> ...
- java9新特性-16-Deprecated的相关API
1.官方Feature 211: Elide Deprecation Warnings on Import Statements 214: Remove GC Combinations Depreca ...
- Visual Studio添加lib到链接依赖项的几种方法
使用第三方库文件编写应用时经常会出现链接错误: 错误 22 error LNK2019: 无法解析的外部符号..... 该符号在函数.....在....中被引用 出现这个错误的原因很简单,链接器在將库 ...
- Kinect 人机交互开发实践
Kinect for Windows SDK 骨骼追踪 —— 对在Kinect视野范围内移动的一个或两个人进行骨骼追踪,可追踪到人体的20个节点 深度摄像头 —— 通过深度传感器获取到视野内的环境三维 ...
- 洛谷 P2147 [SDOI2008]洞穴勘测 LCT
Code: #include <cstdio> #include <algorithm> #include <string> #include <cstrin ...
- Laravel修炼:服务提供者
前言 上一篇博客文章收集了关于Laravel服务容器的相关知识(传送门),我们知道了服务容器主要有绑定和解析两个重要功能,那么Laravel这个框架集齐了如此多功能,我们项目可能还需要另外引入一些 ...
- ASP.NET WEB API微信支付通知接口,返回xml数据,微信服务器不识别问题
原文:ASP.NET WEB API微信支付通知接口,返回xml数据,微信服务器不识别问题 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/MrTra ...
- 帆软FineBI试用
FineBI是帆软软件有限公司推出的一款商业智能(Business Intelligence)产品,FineBI的本质是通过分析企业已有的信息化数据,帮助企业发现并解决存在的问题,预测模拟企业将来的发 ...
- python中的装饰器decorator
python中的装饰器 装饰器是为了解决以下描述的问题而产生的方法 我们在已有的函数代码的基础上,想要动态的为这个函数增加功能而又不改变原函数的代码 例如有三个函数: def f1(x): retur ...