0

我有一个称为硬币的 int,每当用户收集一些硬币时就会显示它。每当显示活动时它都设置为零,但我想在另一个页面上显示累积结果。这就是我积累结果的方式:

if (counter == 0) {
    totalCoins += coins;
    counter++;
        }     

我已经显示了,totalCoins但是每当应用程序被终止并恢复时,totalCoins 都会设置回 0。我尝试使用共享首选项保存它,方法是使用这些方法

private void putValue(String name, int value) {
        SharedPreferences sp = getSharedPreferences("sharedPreferences", 0);
        SharedPreferences.Editor prefEditor = sp.edit();
        prefEditor.putInt(name, value);
        prefEditor.commit();
    }

    private int getValue(String name, int defaultValue) {
        SharedPreferences sp = getSharedPreferences("sharedPreferences", 0);
        return sp.getInt(name, defaultValue);
    }

然后使用了putValue("TotalCoins", totalCoins);totalCoins = getValue("TotalCoins", 0);我如何累积数量硬币,同时将硬币设置为0,并且在重新启动活动时仍然累积它?

4

1 回答 1

0

我想您会在显示活动时检查是否TotalCoins不大于零,然后再设置TotalCoins为零。(可能在onStart()或中onResume()

于 2012-07-29T05:32:16.173 回答