Androidの「コンテキスト」とは何ですか? 質問する

Androidの「コンテキスト」とは何ですか? 質問する

Android プログラミングにおいて、Contextクラスとは正確には何であり、何に使用されるのでしょうか?

私はそれについて読んだ開発者サイトですが、はっきりと理解できません。

ベストアンサー1

簡単に言えば:

名前が示すように、これはアプリケーション/オブジェクトの現在の状態のコンテキストです。これにより、新しく作成されたオブジェクトは、何が起こっているかを理解できます。通常、プログラムの別の部分 (アクティビティとパッケージ/アプリケーション) に関する情報を取得するためにこれを呼び出します。

コンテキストはgetApplicationContext()getContext()、 、getBaseContext()または を呼び出すことによって取得できますthis( から拡張されたクラス ( ContextApplication、Activity、Service、IntentService クラスなど) の場合)。

コンテキストの一般的な使用法:

  • 新しいオブジェクトの作成: 新しいビュー、アダプター、リスナーの作成:

     TextView tv = new TextView(getContext());
     ListAdapter adapter = new SimpleCursorAdapter(getApplicationContext(), ...);
    
  • 標準の共通リソースへのアクセス: LAYOUT_INFLATER_SERVICE、SharedPreferences などのサービス:

     context.getSystemService(LAYOUT_INFLATER_SERVICE)
     getApplicationContext().getSharedPreferences(*name*, *mode*);
    
  • コンポーネントへの暗黙的なアクセス: コンテンツプロバイダ、ブロードキャスト、インテントについて

     getApplicationContext().getContentResolver().query(uri, ...);
    

おすすめ記事