ホームページ >Java >&#&チュートリアル >別の Android アクティビティの PreferenceActivity から SharedPreferences にアクセスするにはどうすればよいですか?

別の Android アクティビティの PreferenceActivity から SharedPreferences にアクセスするにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-03 03:45:10228ブラウズ

How Do I Access SharedPreferences from a PreferenceActivity in Another Android Activity?

Android の PreferenceActivity から SharedPreferences を取得する

PreferenceActivity を使用してアプリケーション設定を表示すると、ユーザーが操作すると設定が自動的に SharedPreferences に保存されます彼らと一緒に。ただし、別のアクティビティから SharedPreference 名にアクセスするのは難しい場合があります。

ドキュメントによると、

「このアクティビティの設定階層が使用する SharedPreferences のインスタンスを取得するには、getDefaultSharedPreferences( android.content.Context) とこれと同じパッケージ内のコンテキストactivity."

解決策:

別のアクティビティから SharedPreferences 名を取得するには、次のコードを使用します。

import android.preference.PreferenceManager;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);

このコードは、アプリケーションのコンテキストを使用する SharedPreferences インスタンス。これは、 PreferenceActivity.

SharedPreferences とアクティビティで処理される設定

ドキュメントで説明されているように、SharedPreferences はアプリケーション内のアクティビティとサービス全体で使用できますが、アクティビティで処理される設定は特定のアクティビティに固有です。

使用SharedPreferences

共有設定の場合は、ファイル名を指定せずにデフォルト モードを使用することをお勧めします:

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);

ただし、ファイル名を指定することもできます:

SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);

保存された値を取得するには:

int storedPreference = preferences.getInt("storedInt", 0);

保存するには値:

SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();

アクティビティで処理される設定の使用

アクティビティに固有の設定を使用するには:

SharedPreferences preferences = getPreferences(MODE_PRIVATE);

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

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