SharedPreferences を使ってみた

Preference は Androidアプリでデータを保存する方法のひとつ
データをキーと値の組み合わせで保存します.

ファイルなどに保存するよりも非常に簡単にデータを保存できます

今回は SharedPreferences を...

SharedPreferences はまず
getSharedPreferences(String name, int mode);
でを取得してきます
name は Preference 自体の名前を指定します
mode には
  • Activity.MODE_PRIVATE
  • Activity.MODE_WORLD_READABLE
  • Activity.MODE_WORLD_WRITEABLE
などを指定します.

保存された Preference は data/data/パッケージ名/shared_prefs
の中に xmlファイルとして保存されるようです

取得する時は
  • getString(String key, String defValue);
  • getInt(String key, int defValue);
  • getLong(String key, long defValue);
  • ...
などを使って取得して着ます

というわけで,Preference を使ってみた

サンプルコード
  1. public class PreferencesTest extends Activity implements OnClickListener {  
  2.   private static final String PREF_KEY = "preferenceTest";  
  3.   private static final String KEY_TEXT = "text";  
  4.   
  5.   SharedPreferences pref;  
  6.   SharedPreferences.Editor editor;  
  7.   
  8.   EditText mEditText;  
  9.     
  10.   @Override  
  11.   public void onCreate(Bundle savedInstanceState) {  
  12.     super.onCreate(savedInstanceState);  
  13.     setContentView(R.layout.preferencestest);  
  14.   
  15.     // SharedPrefernces の取得  
  16.     pref = getSharedPreferences(PREF_KEY, Activity.MODE_PRIVATE);  
  17.   
  18.     mEditText = (EditText) findViewById(R.id.EditText);  
  19.   
  20.     Button button;  
  21.     button = (Button) findViewById(R.id.Button);  
  22.     button.setOnClickListener(this);  
  23.       
  24.     TextView textView;  
  25.     textView = (TextView) findViewById(R.id.TextView);  
  26.     // SharedPreferences よりデータを取得  
  27.     textView.setText(pref.getString(KEY_TEXT, "No Data"));  
  28.   }  
  29.   
  30.   public void onClick(View v) {  
  31.     if (v.getId() == R.id.Button) {  
  32.       // Editor の設定  
  33.       editor = pref.edit();  
  34.       // Editor に値を代入  
  35.       editor.putString(  
  36.           KEY_TEXT,  
  37.           mEditText.getText().toString()  
  38.       );  
  39.       // データの保存  
  40.       editor.commit();  
  41.     }  
  42.   }  
  43. }  

プログラムを実行すると...

保存して...

再び起動

こんな感じ!

ちなみに保存された Preference は
preferencetest.xml
  1. <map>  
  2. <string name="text">Test</string>  
  3. </map>  


参考サイト
http://developer.android.com/intl/ja/reference/android/content/SharedPreferences.html

1 件のコメント:

  1. Betway Group - JTM Hub
    Betway Group is a leading iGaming provider in the 계룡 출장마사지 world and and offer a wide range of sports betting 여주 출장안마 products. to offer the 파주 출장샵 best 대전광역 출장안마 odds 구리 출장샵 and betting

    返信削除