画面遷移時に、どうしてもデータを保存しているクラスごと渡したかったので、どうやってするかをメモ

まず、データ保存したいくらいを用意する。下のは「九九おぼえちゃお」の各問題(1X1,1X2・・・)の情報を格納するクラスです。

[js highlight=”5,9″]

package jp.co.kuku;

import java.io.Serializable;

public class QuesContents implements Serializable{
/**
*
*/
private static final long serialVersionUID = -6576047754467174033L;
public String question = "";
public String left_ans = "";
public String right_ans = "";

public String ques_voice = "";
public String ans_voice = "";

public boolean ans_flag;

protected QuesContents(String _question,String _left_ans,String _right_ans,boolean _ans_flag,String _ques_voice,String _ans_voice) {
this.question = _question;
this.left_ans = _left_ans;
this.right_ans = _right_ans;
this.ans_flag = _ans_flag;
this.ques_voice = _ques_voice;
this.ans_voice = _ans_voice;

}
}

[/js]

5行目のところでシリアライズインターフェイスを実装する

どうやら、変数もすべてシリアライズ可能な変数でなければならない。
9行目は自動で、やってくれる。どうやら受け渡しの時に、データのバージョンを保持するのが目的らしい。
であとは、
遷移元

[js]
QuesContents QC =QuesContents("1×1","1","4",true,"dan1_1_ques","dan1_1_ans");
intent.putExtra("exam_data",QC);
startActivity(intent);
[/js]

遷移先

[js]
QuesContents QC = (QuesContents)getIntent().getSerializableExtra("exam_data");
[/js]

で、あとは煮るなり焼くなり・・・

投稿者 まる

Twitter : @dinagon Instagram : @d_dinagon フォロバします!!最近、ESP/Arduinoいじりすぎでアプリ開発が進んでない。歯医者なのに歯のことはあまり触れませんw