共享偏好力量关闭

时间:2011-12-26 13:37:28

标签: android

当我执行此代码时,我的程序会关闭Force ..任何人都可以告诉我......如何解决方案.. package com.test.sharedPreferences;

import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.widget.TextView;

public class Sharedpreference extends Activity {
    @Override
     public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);

      SharedPreferences pref = getSharedPreferences("Preference",MODE_WORLD_READABLE);
      SharedPreferences.Editor editor = pref.edit();
      editor.putBoolean("keyBoolean", true);
      editor.putFloat("keyFloat", 1.0f);
      editor.putInt("keyInt", 1);
      editor.putLong("keyLong", 1000000L);
      editor.putString("keyString", "Hello Android");
      editor.commit();

//    boolean dataFromPrefBool = pref.getBoolean("keyBoolean", false);
//    float dataFromPrefflaot = pref.getFloat("keyFloat", 0.0f);
      int dataFromPrefInt = pref.getInt("keyInt", 0);
//    long dataFromPrefLong = pref.getLong("keyLong", 0);
//    String dataFromPrefString = pref.getString("keyString", null);

      TextView tv = new TextView(this);
      tv.setText(dataFromPrefInt);
      setContentView(tv);

     }
    }

3 个答案:

答案 0 :(得分:0)

我会使用Context.MODE_PRIVATE

答案 1 :(得分:0)

当您编写getInt ....这意味着您正在打开编辑器。

首先打开编辑器并编写getInt代码。

SharedPreferences pref = getSharedPreferences("Preference",MODE_WORLD_READABLE);
int dataFromPrefInt = pref.getInt("keyInt", 0);

答案 2 :(得分:0)

这是你的问题。您在此处使用MODE_WORLD_READABLE(即只读模式)打开共享首选项:

SharedPreferences pref = getSharedPreferences("Preference",MODE_WORLD_READABLE);

然后通过尝试在此处编辑共享首选项来跟进:

SharedPreferences.Editor editor = pref.edit();
editor.putBoolean("keyBoolean", true);
...
editor.commit();

对你来说这不是什么不合适吗?如果没有,here's the documentation to clarify things.