[解決済み】Androidのグローバル変数
2022-03-27 14:04:48
質問
どのアクティビティが実行されているかに関わらず、アプリケーションのライフサイクルを通じて値を維持するグローバル変数を作成するにはどうすればよいですか?
どのように解決するのですか?
を拡張することができます。
android.app.Application
クラスを作成し、このようにメンバ変数を追加します。
public class MyApplication extends Application {
private String someVariable;
public String getSomeVariable() {
return someVariable;
}
public void setSomeVariable(String someVariable) {
this.someVariable = someVariable;
}
}
アンドロイドマニフェストで、android.app.Application を実装するクラスを宣言する必要があります(android.app.Application を実装するための
android:name=".MyApplication"
属性を既存のアプリケーションタグに追加してください。)
<application
android:name=".MyApplication"
android:icon="@drawable/icon"
android:label="@string/app_name">
そして、アクティビティでは、このように変数を取得・設定することができます。
// set
((MyApplication) this.getApplication()).setSomeVariable("foo");
// get
String s = ((MyApplication) this.getApplication()).getSomeVariable();
関連
-
[解決済み】このアクティビティでは、Theme.AppCompatテーマ(またはその子孫)を使用する必要があります。
-
[解決済み】「ArrayAdapterはリソースIDがTextViewであることが必要」XMLの問題点
-
[解決済み] com.android.supportのライブラリは全て全く同じバージョン表記である必要があります。
-
[解決済み] Androidのソフトキーボードをプログラムで閉じる/隠すにはどうすればよいですか?
-
[解決済み] 関数内でグローバル変数を使用する
-
[解決済み] Bitmapオブジェクトに画像を読み込む際にOutOfMemoryが発生する問題
-
[解決済み] アプリケーションを終了することは嫌われますか?
-
[解決済み] グリッドレイアウトにおけるフリングジェスチャーの検出
-
[解決済み] Androidでグローバル変数を宣言するには?
-
[解決済み】Android UserManager.isUserAGoat()の正しい使用例?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】OnFragmentInteractionListenerを実装する方法
-
[解決済み] 設定 ':classpath' の依存関係をすべて解決できなかった。
-
[解決済み】"ビットマップが大きすぎてテクスチャにアップロードできない"
-
[解決済み】リストビューにonclicklistenerを追加する(android)
-
[解決済み】Android Studioで最新バージョンのgradleを使用する方法
-
[解決済み】IllegalStateException: ViewPager で onSaveInstanceState の後にこのアクションを実行できません。
-
[解決済み] TypeError: cb.apply は関数ではありません。
-
[解決済み] Android SDK の場所には空白を含めないでください。NDK ツールで問題が発生するためです。
-
[解決済み] "android.view.WindowManager$BadTokenException: Buider.show()で "Unable to add window "と表示される。
-
[解決済み】TransactionTooLargeExceptionが発生した場合の対処方法