0

私はAndroidプラットフォームを初めて使用します。「AndroidのSharedPreferencesと同じアクティビティでデータを保存および取得する方法」という質問を解決してください

4

2 に答える 2

3

このリンクにはすべてが含まれています:http://developer.android.com/guide/topics/data/data-storage.html

基本的には次のようなものです。

   // Restore preferences
   SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);

   // Get one Setting
   boolean silent = settings.getBoolean("silentMode", false);
于 2010-12-01T11:19:14.720 に答える
3

多くのアプリケーションは、特定のアプリケーションまたはアクティビティの設定に関するユーザー設定をキャプチャする方法を提供する場合があります。これをサポートするために、AndroidはAPIのシンプルなセットを提供します。

プリファレンスは通常、名前と値のペアです。これらは、アプリケーションのさまざまなアクティビティ間で「共有設定」として保存できます(現在、プロセス間で共有することはできません)。または、アクティビティに固有に保存する必要があるものにすることもできます。

  1. 共有設定:共有設定は、アプリケーションのすべてのコンポーネント(アクティビティ、サービスなど)で使用できます。

  2. アクティビティで処理される設定:これらの設定は、アクティビティでのみ使用でき、アプリケーションの他のコンポーネントでは使用できません。

共有設定:

共有設定は、クラスのgetSharedPreferencesメソッドを使用して管理されます。Contextプリファレンスはデフォルトのfile(1)に保存されます。または、プリファレンスを参照するために使用するファイル名(2)を指定できます。

(1)ファイル名を指定した場合のインスタンスの取得方法は次のとおりです。

public static final String PREF_FILE_NAME = "PrefFile";
   SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);

MODE_PRIVATEプリファレンスの動作モードです。これはデフォルトのモードであり、作成されたファイルには呼び出し元のアプリケーションのみがアクセスすることを意味します。MODE_WORLD_READABLEサポートされている他の2つのモードはとですMODE_WORLD_WRITEABLE。他MODE_WORLD_READABLEのアプリケーションでは、作成されたファイルを読み取ることはできますが、変更することはできません。他のアプリケーションの場合MODE_WORLD_WRITEABLEも、作成されたファイルに対する書き込み権限があります。

(2)推奨される方法は、ファイル名を指定せずにデフォルトモードで使用することです。

SharedPreferences preferences = PreferencesManager.getDefaultSharedPreferences(context);

最後に、プリファレンスインスタンスを取得したら、プリファレンスから保存された値を取得する方法を次に示します。

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

設定ファイルにを保存するには、SharedPreference.Editorオブジェクトを使用する必要があります。クラスEditorのネストされたインターフェイスです。SharedPreference

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

エディタは、ファイルから設定値を削除するremove()などのメソッドもサポートしています。clear()

アクティビティ設定:

共有設定は、他のアプリケーションコンポーネントで使用できます。ただし、プリファレンスを他のコンポーネントと共有する必要がなく、アクティビティをプライベートプリファレンスにしたい場合。あなたはgetPreferences()活動の方法の助けを借りてそれを行うことができます。このgetPreferenceメソッドはgetSharedPreferences()、プリファレンスファイル名にアクティビティクラスの名前を持つメソッドを使用します。

以下は、設定を取得するためのコードです

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

値を保存するコードも、共有設定の場合と同じです。

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

アクティビティ状態をデータベースに保存するなど、他の方法を使用することもできます。注Androidには、と呼ばれるパッケージも含まれていますandroid.preference。このパッケージは、アプリケーション設定UIを実装するためのクラスを定義します。

その他の例を確認するには、開発者サイトにあるAndroidのデータストレージの投稿を確認してください。

于 2010-12-01T12:04:08.557 に答える