私は自分自身を問題にしています。私はPreferenceManagerを持っていて、デフォルト値を持ついくつかのプリファレンスを追跡し、実行時にユーザーが設定することができます。先日、私はこれをテストしていて、設定した方法で処理されていない値を入力しました。 xmlファイルに設定されているデフォルト値をロードして、アプリケーションが再び実行されるようにしたい。今、それはPreferenceManager Trouble
dR.sethRVMax(Integer.parseInt(prefs.getString("hRVMaxKey", "100")));
以下の値をロードしている部分に取得し、それは、このエラー
02-23 20:35:31.454: ERROR/AndroidRuntime(276): FATAL EXCEPTION: main
02-23 20:35:31.454: ERROR/AndroidRuntime(276): java.lang.RuntimeException: Unable to start activity ComponentInfo{cpe495.smartapp/cpe495.smartapp.SmartApp}: java.lang.NumberFormatException: unable to parse '7p-' as integer
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at android.os.Handler.dispatchMessage(Handler.java:99)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at android.os.Looper.loop(Looper.java:123)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at android.app.ActivityThread.main(ActivityThread.java:4627)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at java.lang.reflect.Method.invokeNative(Native Method)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at java.lang.reflect.Method.invoke(Method.java:521)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at dalvik.system.NativeStart.main(Native Method)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): Caused by: java.lang.NumberFormatException: unable to parse '7p-' as integer
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at java.lang.Integer.parse(Integer.java:433)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at java.lang.Integer.parseInt(Integer.java:422)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at java.lang.Integer.parseInt(Integer.java:382)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at cpe495.smartapp.SmartApp.onCreate(SmartApp.java:90)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
02-23 20:35:31.454: ERROR/AndroidRuntime(276): ... 11 more
を吐き出し、私は代わりに、XMLからの完全なデフォルトをロードしたい
最後に保存した設定をロードしようとしています。私は以下を試して、それは動作していません:
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
PreferenceManager.setDefaultValues(this, R.xml.settings, true);
prefs.registerOnSharedPreferenceChangeListener(this);
詳細が必要な場合は私に教えてください。
ありがとうございます!