Реализация интерфейса Parcelable в классе, состоящем из других объектов

У меня есть следующий код для создания базового профиля в моем приложении, он содержит объект другого класса, который содержит все данные о производительности пользователя в массивах и различных других примитивных типах данных. Как мне реализовать в этом классе разделяемый интерфейс, чтобы я мог передавать объект профиля пользователя различным действиям в моем приложении для чтения или записи? Должен ли я реализовать разделяемый интерфейс в классе Performance, а также в этом классе Profile?

public class Profile {

private String name;
private String email;
private Performance Progress;

private int seed;
private int LastRevisionQuestion = 0;

private int[] LastQuestionQuizLinear = {0,0,0};
private int[] tempScoreQuizLinear = {0,0,0};

private int[] LastQuestionQuizRandom = {0,0,0};
private int[] tempScoreQuizRandom = {0,0,0};

private int[] LastQuestionTimedQuizLinear = {0,0,0};
private int[] tempScoreTimedQuizLinear = {0,0,0};
private int[] tempTotalTimeTimedQuizLinear = {0,0,0};

private int[] LastQuestionTimedQuizRandom = {0,0,0};
private int[] tempScoreTimedQuizRandom = {0,0,0};
private int[] tempTotalTimeTimedQuizRandom = {0,0,0};


/**
 * Default constructor
 */
public Profile(){
    this("ProfileName", "ProfileEmail");
}

/**
 * Overloaded constructor takes user name and email address as input parameter to create a new user
 * @param name
 * @param email
 */
public Profile(String name, String email){
    this.name = name;
    this.email = email;
    setProgress(new Performance());
}
}

person Mahesh Gorasia    schedule 08.12.2011    source источник
comment
Взгляните также на stackoverflow.com/questions/3513665/ Есть несколько хороших примеров кода.   -  person Cléssio Mendes    schedule 04.01.2013


Ответы (1)


Вы можете разделять только простые типы данных (int, String, boolean и т. д.), parcelables и maps. Так что да, лучше всего реализовать parcelable и в Performance.

person Phil    schedule 08.12.2011