한 클래스에서 다른 클래스로 객체를 전달하고 싶었고 내 코드는
private MemberLoginResponse loginResponse;
.
.
Intent intent = new Intent();
intent = new Intent(context, BillingDeskActivity.class);
intent.putExtra("privilages", loginResponse);
startActivity(intent);
데이터를 수신하는 다른 활동에서이 코드를 사용합니다.
Intent i_privilages = getIntent();
privilages = (MemberLoginResponse) getIntent().getSerializableExtra("privilages");
심지어 내 클래스는 Serializable을 구현했습니다.
내가 arraylist를 선언하면서 쳤던 내 수업
public class MemberLoginResponse implements Parcelable {
public Integer merchantMemberId = 0;
public Integer merchantId = 0;
public String merchantName = "";
public String merchantLogo = "";
public String merchantType = "";
public String merchantHQAddress = "";
public List<CustomSystemPrivilege> merchantPrivileges;
public List<CustomSystemPrivilege> privileges;
public StatusCode statusCode;
public Integer branchId = 0;
public MemberLoginResponse(Parcel in) {
merchantMemberId = in.readInt();
merchantId = in.readInt();
merchantName = in.readString();
merchantLogo = in.readString();
merchantType = in.readString();
merchantHQAddress = in.readString();
in.readList(merchantPrivileges,
CustomSystemPrivilege.class.getClassLoader());
in.readList(privileges, CustomSystemPrivilege.class.getClassLoader());
branchId = in.readInt();
}
public MemberLoginResponse() {
// TODO Auto-generated constructor stub
}
public static final Parcelable.Creator<MemberLoginResponse> CREATOR = new Parcelable.Creator<MemberLoginResponse>() {
@Override
public MemberLoginResponse createFromParcel(Parcel in) {
return new MemberLoginResponse(in);
}
@Override
public MemberLoginResponse[] newArray(int size) {
return new MemberLoginResponse[size];
}
};
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeInt(merchantMemberId);
dest.writeInt(merchantId);
dest.writeString(merchantName);
dest.writeString(merchantLogo);
dest.writeString(merchantType);
dest.writeString(merchantHQAddress);
dest.writeList(merchantPrivileges);
dest.writeList(privileges);
dest.writeInt(branchId);
}
}}
다음은 다른 parcelable 객체를 parcelable로 읽고 쓰는 코드입니다.
class MemberLoginResponse implements Parcelable {
//
private StatusCode statusCode;
public void writeToParcel(Parcel dest, int flags) {
dest.writeParcelable(statusCode , flags);
}
}
당신이 그것을 읽고 싶다면 이것을 사용하십시오
statusCode = (StatusCode)in.readParcelable(A.class.getClassLoader());
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다