LoginSignup
0
0

More than 3 years have passed since last update.

[ Android ] ApplicationContextをどこからでも呼び出す

Posted at

前回はApplicationを継承したクラスについて紹介した。
https://qiita.com/QiitaD/items/549fb2143b2774c30d72

今回は、そのクラスを使ってApplicationContextをどこからでも呼び出す実装の仕方について紹介する。

実装

メンバ変数にインスタンスを格納しておくことで、このクラスのgetメソッドからインスタンスを取り出すことができる。

public class MyApplication extends Application {

    //このクラスのインスタンスを保持しておくためのメンバ変数
    private static MyApplication myApplication = null;
       @Override
       public void onCreate() {
           super.onCreate();
           //onCreate()が呼び出されると、インスタンスをメンバ変数に格納
           myApplication = this;
       }

       //メンバ変数に保持したインスタンスをgetするメソッド
       public static MyApplication getMyApplication() {
           return myApplication;
       }
    }

これでMyApplicationクラスのインスタンスを取得できるので、そこから以下のようにしてApplicationContextを取得できる。

Context context = MyApplication.getMyApplication().getApplicationContext();

参考サイト

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0