-1
我创建了一个新的类,检查完满成功代码: 测试类:
import org.parceler.Parcel;
import io.realm.RealmObject;
import io.realm.TESTRealmProxy;
import io.realm.annotations.PrimaryKey;
@Parcel(implementations = {TESTRealmProxy.class},
value = Parcel.Serialization.BEAN,
analyze = {TEST.class})
public class TEST extends RealmObject {
@PrimaryKey
int Id;
String Name;
public int getId() {
return Id;
}
public String getName() {
return Name;
}
public TEST(){
}
public TEST(int id, String name){
this.Id = id;
this.Name = name;
}
}
活动1:
Intent resultIntent = new Intent(this, NewActivity.class);
TEST dd = new TEST(2, "pa7");
Log.e(TAG, "Profile: "+dd.getId());
resultIntent.putExtra("userProfile",Parcels.wrap(dd));
startActivityForResult(resultIntent, 3);
NewActivity:
TEST mUserd = Parcels.unwrap(getIntent().getParcelableExtra("userProfile"));
if(mProfileUserd != null) {
Log.e(TAG, "ID: USER: " + mUserd.getId()+" - name "+mUserd.getName());
} else {
Log.e(TAG, "Is Null");
}
OUTPUT:
Profile: 2
ID: USER: 0 - name null
OLD
用户类:
@Parcel(implementations = {
UserRealmProxy.class},
value = Parcel.Serialization.BEAN,
analyze = {User.class})
public class User extends RealmObject {
int Id;
String Name;
}
功能:
Intent resultIntent = new Intent(this, NewActivity.class);
resultIntent.putExtra("userProfile",Parcels.wrap(User.class, mAuthor));
startActivityForResult(resultIntent, 6);
NewActivity:
mUser = Parcels.unwrap((Parcelable) getIntent().getExtras().get("userProfile"));
我有我的对象称为用户,除了一件事情,一切都可以正常工作。我有一个从数据库请求用户的片段(B),但我不需要将这些用户保存在领域中。我在这个片段中唯一需要的是将用户对象发送给另一个活动。
注意:在其他片段(A)中,我需要保存用户,但在片段B中我不需要。
我的问题:我是否需要创建另一个名为“User2”的对象或者不扩展RealmObject并在片段B中使用的对象?或者有另一种方式。
public class User extends RealmObject {
}
我查一下这一点,并再次发布。感谢您的回答 –
我将包裹实施添加到我的课程中。只有1个对象,所以我不认为我需要RealmListConverter。无论如何,现在我该如何将对象发送给其他活动?应该是这样的: resultIntent.putExtra(“user”,(Parcelable)mAuthor); –
我认为应该可以工作,你应该尝试一下 – EpicPandaForce