SharedPreferences不检索int数据

时间:2013-11-10 21:54:47

标签: android listview int sharedpreferences

我有一个保存的首选项,可以记录按下按钮的次数。当用户关闭动作并返回时,应该检索先前按下按钮的次数,并且用户应该能够继续增加该值。没有错误出现,我不知道我错过了什么

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.home_layout);


        list = (ListView) findViewById(R.id.listView1);
        adapter = new CustomAdapter(Inbox.this, R.id.listView1, fetch);
        list.setAdapter(adapter);

        LoadInt();

        dede = (TextView) findViewById(R.id.days);
        tv = (TextView) findViewById(R.id.title);
        tv.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {

                day++;
                dede.setText("Test" + dayCounter);
                adapter.notifyDataSetChanged();
                listViewContent();
                SaveInt("key", day);
            }
        });

    }

在调用onCreate之前调用LoadInt。

我的onclicklistener内部调用了SaveInt。

public void SaveInt(String key, int value) {
        SharedPreferences sp = PreferenceManager
                .getDefaultSharedPreferences(getApplicationContext());
        SharedPreferences.Editor editor = sp.edit();
        editor.putInt(key, value);
        editor.commit();
    }

public void LoadInt() {
        SharedPreferences lp = PreferenceManager
                .getDefaultSharedPreferences(getApplicationContext());
        dayCounter = lp.getInt("key", day);
    }

3 个答案:

答案 0 :(得分:0)

当您尝试使用小写“k”保存和检索时,密钥上有一个大写“K”

答案 1 :(得分:0)

这是一个案例问题。 在保存时,您使用了“密钥”

SaveInt("Key", day);

让你使用“钥匙”

lp.getInt("key", day);

答案 2 :(得分:0)

你的Key不是等于密钥(大小写:-))是否重要?