ホームページ >Java >&#&チュートリアル >アクティビティを作成する前に Android リソースにアクセスするにはどうすればよいですか?

アクティビティを作成する前に Android リソースにアクセスするにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-28 08:07:11977ブラウズ

How to Access Android Resources Before Creating Activities?

静的コンテキストからのリソース コンテンツの取得

Android 開発では、多くの場合、リソース ファイルにアクセスするには、getResources() メソッドを呼び出すための Activity オブジェクトが必要です。ただし、アクティビティを作成する前に、アプリケーションのライフサイクルの早い段階でリソース文字列またはアセットを取得する必要がある場合があります。 Activity オブジェクトを使用せずにこれを行うにはどうすればよいでしょうか?

アプリケーション サブクラスを使用した解決策

この解決策には、カスタムの Application サブクラスを作成し、その onCreate() と getContext( ) メソッドを使用して、アプリケーション コンテキストを保存および取得します。その仕組みは次のとおりです。

  1. App extends Application などのアプリケーションのサブクラスを作成します。{
  2. AndroidManifest.xml ファイルを更新して、 内の新しいクラスを参照します。 tag: android:name=".App"
  3. App クラスの onCreate() メソッド内で、現在のコンテキスト (this) を mContext という名前の静的フィールドに保存し、静的メソッド getContext():
public class App extends Application {

    private static Context mContext;

    @Override
    public void onCreate() {
        super.onCreate();
        mContext = this;
    }

    public static Context getContext() {
        return mContext;
    }
}
    App.getContext() を使用してアプリケーション コンテキストを取得し、リソースにアクセスします後で:
Resources res = App.getContext().getResources();
String myString = res.getString(R.string.my_string);
このアプローチでは、アクティビティを作成する前であっても、静的な App.getContext() メソッドを使用してアプリケーション内の任意のクラスからリソース コンテンツを取得できます。

以上がアクティビティを作成する前に Android リソースにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。