2017-02-25 43 views
-3

我有我的應用程序是一個整數,用戶可以點擊一個按鈕來增加或減少到。我希望Integer在用戶退出並重新打開應用程序時保持它的價值。我查看了SharedPrefrences,它很複雜,對我來說沒有任何意義。Android的工作室 - 如何保存單個int?

+1

什麼你不明白在使用SharedPreferences?您具有讀取和寫入幾種類型的鍵/值對的特定方法。即:'getInt()'和'putInt()'。寫作時,你必須申請'()'或'提交()'的變化(不同的是,前者是異步的,後者是同步)。因此,像往常一樣,創建對象,使用它,並最終關閉它。 –

+0

的可能的複製[Android的共享偏好示例](http://stackoverflow.com/questions/23024831/android-shared-preferences-example) –

回答

0

我已經簽出SharedPrefrences,它很複雜,並沒有 對我有意義。

你必須處理的事實,有沒有很多選擇......

  1. 店在首選項中的信息
  2. 存放在數據庫中的信息,您可以
  3. 推說數據放入服務器並將其保留回去

如果您只需要一個整數值,那麼SharedPref是最簡單的方法就行了....

如何寫:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE); 
SharedPreferences.Editor editor = sharedPref.edit(); 
editor.putInt(getString(R.string.saved_high_score), newHighScore); 
editor.commit(); 

如何讀回:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE); 
int defaultValue = getResources().getInteger(R.string.saved_high_score_default); 
long highScore = sharedPref.getInt(getString(R.string.saved_high_score), defaultValue); 

官方文檔是here

0

有存儲持久性信息幾種方法在Android應用

  1. SharedPrefrences;這是你能想到的最簡單的方法,而不要求用戶進行存儲/網絡權限

使用例如: -

PreferenceManager.getDefaultSharedPreferences(context).getInt("X", 1); // to retrieve 
PreferenceManager.getDefaultSharedPreferences(context).putInt("X", 1); // to store 
  • 文件存儲(內部/外部);這是保存在內部或外部存儲文本文件一樣簡單,但確實需要的用戶權限

  • SQLLite /其他內部或外部的數據庫服務;這是如此複雜,但它更靈活