以前、セッターを使って異なるクラス間で値をやり取りする方法を紹介した。
https://qiita.com/QiitaD/items/50fb0b6b7709e66a5041
今回はApplicationクラスを継承したクラスを作り、そのクラスを介して異なるクラス間で値をやり取りする方法を紹介する。
クラスの作成と登録
以下のようにApplicationクラスを継承したクラスを作る。
public class MyApplication extends Application{
public static String test = "test";
}
しかしこれだけでは使用できない。以下のようにしてAndroidManifestに登録する必要がある。
<application>
android:name=".MyApplication"
</application>
使用方法
MyApplicationクラスは以下のように使用する。
//アプリケーションを取得し、MyaApplication型変数に代入する
MyApplication myApplication = (MyApplication) this.getApplication();
//上記の変数からMyApplicationクラスのメンバ変数を呼び出す
textView.setText(myApplication.test);