Android SharedReference未保存

Android SharedReference未保存,android,sharedpreferences,edittextpreference,Android,Sharedpreferences,Edittextpreference,嗨,我想问一下,为什么我在EditTextPreference上的SharedReference没有保存?这是我的代码 SharedPreferences coinPrefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext()); String coin_pref = coinPrefs.getString("currentCoin", null); Editor editor = coinPr

嗨,我想问一下,为什么我在EditTextPreference上的SharedReference没有保存?这是我的代码

    SharedPreferences coinPrefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
    String coin_pref = coinPrefs.getString("currentCoin", null);
    Editor editor = coinPrefs.edit();

    if (Answer.equals("LEFTOVERS")){
        bg1 = 1;
        Coin = Integer.parseInt(coin_pref) + 3;
        coin_pref = String.valueOf(Coin);
        tvCoin.setText(coin_pref);
        editor.putString("coinValue", coin_pref);
        editor.commit();

    }
我想做的是得到硬币的价值,是5,然后加上3,然后把它放在硬币上,然后把它放在共享参考中。我注意到我的tvCoin.setText(5)变成了8,但仍然没有保存在EditTextPreference中。提前谢谢你的帮助

已编辑

我试着使用这个代码

SharedPreferences coinPrefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
    Integer coin_pref = coinPrefs.getInt("currentCoin", Coin);
    Editor editor = coinPrefs.edit();

    if (Answer.equals("LEFTOVERS")){
        bg1 = 1;
        Coin = coin_pref + 3;
        coin_pref = Coin;
        tvCoin.setText(coin_pref);
        editor.putInt("coinValue", coin_pref);
        editor.commit();
    }
在logcat上找到了这个

11-30 21:26:55.691: D/dalvikvm(483): GC_FOR_MALLOC freed 2859 objects / 177440 bytes in 99ms
11-30 21:27:03.963: D/AndroidRuntime(483): Shutting down VM
11-30 21:27:03.971: W/dalvikvm(483): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
11-30 21:27:03.971: E/AndroidRuntime(483): FATAL EXCEPTION: main
11-30 21:27:03.971: E/AndroidRuntime(483): java.lang.NullPointerException
11-30 21:27:03.971: E/AndroidRuntime(483):  at com.thesis.logipic.Gameplay.beginnerChecking(Gameplay.java:501)
11-30 21:27:03.971: E/AndroidRuntime(483):  at com.thesis.logipic.Gameplay$1.onClick(Gameplay.java:434)
11-30 21:27:03.971: E/AndroidRuntime(483):  at android.view.View.performClick(View.java:2408)
11-30 21:27:03.971: E/AndroidRuntime(483):  at android.view.View$PerformClick.run(View.java:8816)
11-30 21:27:03.971: E/AndroidRuntime(483):  at android.os.Handler.handleCallback(Handler.java:587)
11-30 21:27:03.971: E/AndroidRuntime(483):  at android.os.Handler.dispatchMessage(Handler.java:92)
11-30 21:27:03.971: E/AndroidRuntime(483):  at android.os.Looper.loop(Looper.java:123)
11-30 21:27:03.971: E/AndroidRuntime(483):  at android.app.ActivityThread.main(ActivityThread.java:4627)
11-30 21:27:03.971: E/AndroidRuntime(483):  at java.lang.reflect.Method.invokeNative(Native Method)
11-30 21:27:03.971: E/AndroidRuntime(483):  at java.lang.reflect.Method.invoke(Method.java:521)
11-30 21:27:03.971: E/AndroidRuntime(483):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
11-30 21:27:03.971: E/AndroidRuntime(483):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
11-30 21:27:03.971: E/AndroidRuntime(483):  at dalvik.system.NativeStart.main(Native Method)
11-30 21:27:11.432: I/Process(483): Sending signal. PID: 483 SIG: 9

为什么不使用putInt来表示硬币的价值呢?别担心,我知道editor.putString(“coinValue”,coin\u pref)有什么问题;我把“coinValue”改为“currentCoin”,这是一个简单的错误,很高兴你把它修好了。谢谢你一直在努力帮助我^ ^你在哪里存钱。这里没有这方面的代码。