web-dev-qa-db-ja.com

Android SharedPreferences、単純なint変数を保存する方法

私はAndroidアプリケーションに整数を保存するために最後の1時間を試みています。これはSharedPreferencesを使用して実行できることを読みました。

Int変数を単純に保存するにはどうすればよいですか?そして、アプリケーションを再び実行するときに、この変数と再びやり取りするにはどうすればよいですか?

32
donparalias
SharedPreferences sp = getSharedPreferences("your_prefs", Activity.MODE_PRIVATE);
SharedPreferences.Editor editor = sp.edit();
editor.putInt("your_int_key", yourIntValue);
editor.commit();

あなたはそれを次のように得ることができます:

 SharedPreferences sp = getSharedPreferences("your_prefs", Activity.MODE_PRIVATE);
 int myIntValue = sp.getInt("your_int_key", -1);

SharedPreferenceインターフェイスを使用すると、xmlファイルにアクセスでき、エディターを使用して簡単に変更できます。ファイルは/data/data/com.your.package/shared_prefs/に保存されており、このSharedPreference AP​​Iからのみアクセスできます

56
Blackbelt
public void SaveInt(String key, int value){
       sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
       SharedPreferences.Editor editor = sharedPreferences.edit();
       editor.putInt(key, value);
       editor.commit();
}
public void LoadInt(){
       sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
       savedValue = sharedPreferences.getInt("key", 0);
}

変数をどこかに保存したい場合は、SaveInt( "key"、5);と書く必要があります。これにより、値5を保存しますが、最初のデフォルト値は0です。それをロードして別のアクティビティで使用する場合は、これらのメソッドを両方とも記述し、LoadInt()を呼び出す必要があります。変数が必要な場所。 savedValueは事前定義された整数です(保存された変数を使用したいすべての場所で宣言する必要があります)

11
Jani Bela

これはブール設定を設定する例です。整数でも使用できます。

SharedPreferences prefs = PreferenceManager
                    .getDefaultSharedPreferences(this);
            if (!prefs.getBoolean("firstTime", false)) {

                SharedPreferences.Editor editor = prefs.edit();
                editor.putBoolean("firstTime", true);
                editor.commit();
            }

これが役立つことを願っています。

6
Chintan Soni