您的位置:首页
Activity 之间 传递 List 封装的对象或者对象
2017-06-07 13:23
239 查看
项目中遇到 从也个页面向还有一个页面跳转传递一个List 封装的对象 。按网上查的资料 须要把 对象 实现 Serializable接口。
写了一下。可是跳转直接崩溃。一直看错误之日找不到原因后来自习教案代码,发现bean里面还有其它bean。对象里的对象没有 进行序列化。记录分享一下。
代码例如以下:
两个Bean 文件
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 接收
Activity 之间传递对象也是实现 Serializable 接口
KnowledgeClassifyBean knowledgeClassifyBean = new KnowledgeClassifyBean();
intent.putExtra("knowledgeClassifyBean ",
knowledgeClassifyBean );
接收的Activity
Intent intent = getIntent();
KnowledgeClassifyBean knowledgeClassifyBean =
(KnowledgeClassifyBean
)intent.getSerializableExtra("knowledgeClassifyBean ");
写了一下。可是跳转直接崩溃。一直看错误之日找不到原因后来自习教案代码,发现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 封装的对象或者对象
- 17开年第一篇Activity之间传递List<T> 以及T对象类型数据的方法
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
- 两个Activity之间 传递 List对象
- Android两个Activity之间传递List<Object>对象
- Android中使用Intent在Activity之间传递对象(使用Serializable或者Parcelable)的方法
- Activity之间传递List对象
- JSON:在两个activity之间使用intent传递list类型的对象
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
- 两个JSP页面之间如何传递一个对象?比如一个LIST或者HASHMAP?以及为什么有时候REQUEST.GETATTRIBUTE("NAME")取不到值?
- Android使用Intent在Activity之间传递对象[Serializable或者Parcelable]
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable] .
- Android中如何使用Intent在Activity之间传递对象[使用Serializable或者Parcelable]
- 在两个activity之间使用intent传递list类型的对象
- Activity之间传递 List对象