2016-06-19 17 views
3

Ich habe eine Sammlung von Daten, die in Arraylist hält serializable Modell mit folgenden Datentypen: -Wie man ArrayList mit Model-Class-Daten serialisieren in Android zwischen Aktivitäten machen?

  1. boolean isChecked
  2. String name
  3. String Detail

ich diese Daten weitergeben wollen aus Erste Aktivität bis zur zweiten Aktivität und bearbeiten Sie den booleschen Status isChecked mithilfe des ListView-Adapters mit Adapterrückruf. Wenn ich zur ersten Aktivität zurückkomme, möchte ich die Daten von Second Activity aktualisieren.

Ich bin in der Lage, Daten zu übergeben und aktualisieren Sie in der zweiten Aktivität, aber nicht in der Lage, aktualisierte Daten in First Activity zu erhalten. Wie ist es möglich, meine Anforderung zu erfüllen, wird jede Art von Hilfe sehr geschätzt Vielen Dank

Antwort

2

Sie mögen dies unter

Erste Methode passieren kann

1) Implementiert Ihre Objektklasse serializable

public class Question implements Serializable

2) das Setzen Sie in Ihrem Quellaktivität

ArrayList<Question> mQuestionList = new ArrayList<Question>; 
mQuestionsList = QuestionBank.getQuestions(); 
mQuestionList.add(new Question(ops1, choices1)); 

Intent intent = new Intent(SourceActivity.this, TargetActivity.class); 
intent.putExtra("QuestionListExtra", mQuestionList); 

3) Setzen Sie diese in Ihre Ziel Aktivität

ArrayList<Question> questions = new ArrayList<Question>(); 
questions = getIntent().getSerializableExtra("QuestionListExtra"); 

Zweite Methode

Hinweis Sie Modellklasse muss implements Parcelable

List<Bird> birds = new ArrayList<Bird>(); 
//birds.add(); 
Intent intent = new Intent(Current.this, Transfer.class); 
Bundle bundle = new Bundle(); 
bundle.putParcelableArrayList("Birds", birds); 
intent.putExtras(bundle); 
startActivity(intent); 

Recive wie folgt

+0

Dank Sohaiol Es funktionierte, folgte ich Erste Methode .. –

0

Betrachten Sie Serialisierung dieses als Zeichenfolge, legen Sie es als Extra in einer Absicht und deserialize es in der zweiten Aktivität.