Java persistLong不工作,即使我将文字放在内部-ClassCastException

Java persistLong不工作,即使我将文字放在内部-ClassCastException,java,android,Java,Android,我有一个很奇怪的问题。首先请看一下我的代码。我创建了扩展EditTextPreference的自定义类,并重写了onClick(DialogInterface,which)方法 这可能是因为根据文档,edittextpereference专门用于存储文本字符串。可能是的。好吧,没关系。然后我将解析另一端的字符串。非常感谢。 @Override public void onClick(DialogInterface dialog, int which) { super.on

我有一个很奇怪的问题。首先请看一下我的代码。我创建了扩展EditTextPreference的自定义类,并重写了onClick(DialogInterface,which)方法


这可能是因为根据文档,
edittextpereference
专门用于存储文本字符串。可能是的。好吧,没关系。然后我将解析另一端的字符串。非常感谢。
@Override
    public void onClick(DialogInterface dialog, int which) {
        super.onClick(dialog, which);

        switch(which) {
        case DialogInterface.BUTTON_POSITIVE:

            long currentDelay = (Long.parseLong(getEditText().getText().toString())*1000);

            if(currentDelay < 0.5) {

                getEditText().setText("1000");
                currentDelay = 1000;
            }

            persistLong(currentDelay); // Crashes (Even if I put literal inside)
            persistString(getEditText().getText().toString()); // It works  
        break;

        }
03-05 15:51:14.212: E/AndroidRuntime(22739): FATAL EXCEPTION: main
03-05 15:51:14.212: E/AndroidRuntime(22739): java.lang.ClassCastException: java.lang.String
03-05 15:51:14.212: E/AndroidRuntime(22739):    at android.app.ContextImpl$SharedPreferencesImpl.getLong(ContextImpl.java:2939)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at android.preference.Preference.getPersistedLong(Preference.java:1388)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at android.preference.Preference.persistLong(Preference.java:1359)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at com.callandsmsled.MyEditTextPreference.onClick(MyEditTextPreference.java:59)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:159)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at android.os.Handler.dispatchMessage(Handler.java:99)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at android.os.Looper.loop(Looper.java:130)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at android.app.ActivityThread.main(ActivityThread.java:3835)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at java.lang.reflect.Method.invokeNative(Native Method)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at java.lang.reflect.Method.invoke(Method.java:507)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:864)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:622)
03-05 15:51:14.212: E/AndroidRuntime(22739):    at dalvik.system.NativeStart.main(Native Method)