2011-03-01 66 views
3

由于我是android开发新手。清除Android应用程序中共享pref的数据

用户从我的应用程序点击退出按钮后,我想删除我存储在共享的首选项中的所有信息。

我用这个editor.clear()但它不会工作,

我想删除这是由共享PREF用户点击后创建的注销按钮,我想删除在运行时该文件的XML文件?

日Thnx任何帮助....

回答

11

您需要提交修改:

editor.clear(); 
editor.commit(); 

料斗中这种帮助

+0

我有尝试这是行不通...... – Sumant 2011-03-01 13:26:57

+1

请编辑你原来的问题发布您的代码的相关部分。我们没有魔术球:D – 2011-03-01 13:29:01

+0

editor = sharedPref.edit(); editor.clear(); \t \t \t \t \t \t //editor.remove(TwitterSession.TWEET_AUTH_KEY); \t //editor.remove(TwitterSession.TWEET_AUTH_SECRET_KEY); //mTwitter.resetAccessToken(); // \t accessToken = null; editor.commit(); \t TestPost.this.finish();所有上面的代码是在clicklistener的注销按钮 – Sumant 2011-03-01 13:54:13

4

尝试editor.clear();后跟一个editor.commit();


编辑:

下面是我用一个例子:

Preference clearPref = (Preference) findPreference("clearAll"); 
    clearPref.setOnPreferenceClickListener(new OnPreferenceClickListener() { 

    public boolean onPreferenceClick(Preference preference) { 
     SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(getBaseContext());       
     SharedPreferences.Editor editor = settings.edit(); 
     editor.clear(); 
     editor.commit();     
     Toast.makeText(getBaseContext(), "All data cleared!", Toast.LENGTH_SHORT).show(); 

     return true; 
    } 

}); 
+0

下我已经尝试过它不会工作... – Sumant 2011-03-01 13:27:43

+0

正如弗朗切斯科所说,请张贴您的代码的具体部分 – Maaalte 2011-03-01 13:34:23

+0

editor = sharedPref.edit(); editor.clear(); \t \t \t // editor.remove(TwitterSession.TWEET_AUTH_KEY); // editor.remove(TwitterSession.TWEET_AUTH_SECRET_KEY); mTwitter.resetAccessToken(); accessToken = null; editor.commit(); \t TestPost.this.finish(); – Sumant 2011-03-01 13:52:34

相关问题