2014-02-19 103 views
0

我想知道如何在android中添加2个偏好值?即考虑一个游戏中有硬币来获得生命,并说用户选择不使用该硬币并再次开始游戏。现在让我们说他有更多的硬币。所以我的问题是如何添加旧的未使用的硬币+新获得的硬币?添加偏好设置

+0

您可以将其添加到Sqlite数据库.. –

+0

@PrashantMishra是否有其他任何选择,除了database.ie使用共享首选项来存储和添加两个首选项vlaues? –

+0

在您的应用程序创建偏好活动,并显示您的总硬币,并更新它... http://stackoverflow.com/a/9278088/1765530 – appukrb

回答

0

您可以使用SharedPreferences作为

写入共享偏好使用:

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); 
0
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); 
prefs.edit().putInt("lifecoin", 5).commit(); 

可以说用户在这里留下5个硬币。现在你使用while循环是这样的:

int leftovercoin = 0; 
try 
{ 
    leftovercoin = prefs.getInt("lifecoin", 0); 
} 
catch(Exception e) 
{ 
    Log.e("Error while getting shared pref", "Error while getting shared pref", e); 
} 
//add your new level's coins(5 of them) to the leftovercoins from last stage 
leftovercoin = leftovercoin + 5; //here leftovercoin would be 10 because the shared preference has given it a value of 5 at first 
while(leftovercoin>0) 
{ 
     //spawn your coins here 
     leftovercoin--; 
} 
+0

让我简单的做这些代码增量优先值的任何说前面的游戏中的2个硬币+新游戏总共5个硬币我需要显示7个硬币和用户必须能够从这7个硬币减少。 –

+0

已更新。而不是使用while循环,每当用户做一些事情并产生一枚硬币时,就会减少它。 – Orphamiel