![](/img/trans.png)
[英]Android + Appium + ArrayList: How to pass ArrayList between several activities
[英]How to make ArrayList with model class data serializable in android between Activities?
我在ArrayList中有一組數據,其中包含可序列化的模型,其中包含以下數據類型: -
我想將這些數據從First Activity傳遞給Second Activity,並使用帶有適配器回調的listView適配器編輯isChecked
的布爾狀態。當我回到First Activity時,我想更新Second Activity中的數據。
我能夠在第二個Activity中傳遞數據並更新它,但無法在First Activity中獲取更新數據。 如何實現我的要求,非常感謝任何形式的幫助謝謝
您可以通過以下方式傳遞
第一種方法
1)實現您的對象類可序列化
public class Question implements Serializable
2)把它放在你的Source Activity中
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)將其放入目標活動中
ArrayList<Question> questions = new ArrayList<Question>();
questions = getIntent().getSerializableExtra("QuestionListExtra");
第二種方法
注意您的模型類必須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);
像這樣回憶
List<Bird> challenge = this.getIntent().getExtras().getParcelableArrayList("Birds");
你必須在這里使用startActivityForResult。 需要再次將您的模型arraylist傳遞回活動一。
請參考以下代碼以實現您的目的。
考慮將其序列化為字符串,將其作為額外的意圖並在第2個活動中反序列化。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.