首页 > 解决方案 > 无法通过 Android 中的 SharedPreferences 保存数据

问题描述

textView当我再次打开应用程序时,我无法保存数据我在 textview 中遇到错误:

错误信息字段 XXXXX 应该是数字

我认为它没有保存任何数据,或者我使用了不正确的方法。先感谢您!

  class MyJavaScriptInterface {
        @JavascriptInterface
        @SuppressWarnings("unused")
        public void processHTML(final String html) {
            myWebView.post(new Thread() {
                @Override public void run() {
                    TextView text = findViewById(R.id.textView);



                    if(!sharedPreferences.contains("statusKey")){
                        sharedPreferences = getSharedPreferences("prefID", Context.MODE_PRIVATE);
                        SharedPreferences.Editor editor = sharedPreferences.edit();
                        editor.putString("statusKey", html);
                        editor.apply();
                        text.setText(html);
                    }
                    else {
                        text.setText(sharedPreferences.getString("statusKey", ""));
                    }

                }
    });
        }
    }

标签: javaandroidtextviewsharedpreferences

解决方案


class MyJavaScriptInterface {
    @JavascriptInterface
    @SuppressWarnings("unused")
    public void processHTML(final String html) {
        myWebView.post(new Thread() {
            @Override public void run() {
                TextView text = findViewById(R.id.textView);

                sharedPreferences = getSharedPreferences("prefID", Context.MODE_PRIVATE);
                if(!sharedPreferences.contains("statusKey")){

                    SharedPreferences.Editor editor = sharedPreferences.edit();
                    editor.putString("statusKey", html);
                    editor.apply();
                    text.setText(html);
                }
                else {
                    text.setText(sharedPreferences.getString("statusKey", ""));
                }

            }
});
    }
}

试试上面的代码


推荐阅读