任何人都可以帮我解决我的问题,将包裹的realmobject传递给另一个活动,在第二个活动中,我的对象为空?
在Activity中,我从标签中获取类Category的instatne。
Intent intent = new Intent(context, CategoryListActivity.class);
Category category = (Category)v.getTag();
Log.e("Id", " "+category.getId()); //this is ok it prints 1
Parcelable parcelable = Parcels.wrap(category);
intent.putExtra("category", parcelable);
startActivity(intent);
在类CategoryListActivity中,方法onCreate是代码
Intent intent = getIntent();
Category category = Parcels.unwrap(intent.getParcelableExtra("category"));
Category category1= Parcels.unwrap(getIntent().getExtras().getParcelable("category"));
Log.e("Id 1", " "+category.getId()); //retun 0
Log.e("Id 1", " "+category1.getId()); //return 0
这个打印0并且我不知道为什么是0.任何人都有一些建议来解决这个问题吗? thx,或者如果它的necessery插入我的实体,它扩展了RealmObject我可以粘贴
答案 0 :(得分:2)
除非它们是非托管或独立对象,否则不应在Parcel中发送RealmObjects。
在另一端发送ID值并查询对象更安全:https://realm.io/docs/java/latest/#intents
如果您想使用Parceler。您是否按照此处所述配置了对象:https://realm.io/docs/java/latest/#parceler