怎么清除shared ptr怎么使用Preferences的内容

怎么清除sharedPreferences的内容_百度知道
怎么清除sharedPreferences的内容
我有更好的答案
if(。。){ 再按一次// }else{ finish(); } 按两次退出应该是这种格式吧,直接在 else{ finish(); //这个地方设置清除信息可以啊 }
采纳率:87%
来自团队:
打候使用追加打式
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。当前位置: →
→ 删除SharedPreferences的存储记忆
删除SharedPreferences的存储记忆
& 作者及来源: Catherine_Brain - 博客园 &
&收藏到→_→:
摘要: 删除SharedPreferences的存储记忆
"删除SharedPreferences的存储记忆"::
为什么会突然想到做这个呢?其实是来源于qq里面可以退出当前用户的那个功能,所以,在我们做项目的时候就可以考虑两种情况,一种就是单纯的退出当前程序,但是在 里面以及sharedpreferences里面的记忆任然还在,另外一种呢,就是,一山只能容二虎一样,我们就只能拥有一个用户,那样,就在退出当前用户的时候,我们就必须要消除开始的那个用户的资料!
&&&当然,这里,我先建立一个sharedpreferences的记忆,然后再将其消除:
1 sharedpreference
sharedpreferences.
3 msharedpreferences = getsharedpreferences("user", mode_private);
// 存入数据
editor.putint("int_key", 0);
editor.commit();这里,我们就将其移除:
8 file file = new file("/data/data/"
+ getpackagename().tostring() + "/shared_prefs",
"user.xml");
if (file.exists()) {
boolean flag = file.delete();
if (flag) {
toast.maketext(userinfoactivity.this, "删除成功",
toast.length_long).show();
userinfoactivity.this.finish();
intent intent = new intent();
intent.setclass(userinfoactivity.this,
homeactivity.class);
startactivity(intent);
&搜索此文相关文章:此文来自: 马开东博客
网址: 站长QQ
删除SharedPreferences的存储记忆_博客园相关文章
博客园_总排行榜
博客园_最新
博客园_月排行榜
博客园_周排行榜
博客园_日排行榜Android应用开发SharedPreferences存储数据的使用方法
转载 & & 作者:
SharedPreferences是Android中最容易理解的数据存储技术,实际上SharedPreferences处理的就是一个key-value(键值对)SharedPreferences常用来存储一些轻量级的数据
SharedPreferences是Android中最容易理解的数据存储技术,实际上SharedPreferences处理的就是一个key-value(键值对)。SharedPreferences常用来存储一些轻量级的数据.
代码如下: //实例化SharedPreferences对象(第一步) SharedPreferences mySharedPreferences= getSharedPreferences("test", Activity.MODE_PRIVATE); //实例化SharedPreferences.Editor对象(第二步) SharedPreferences.Editor editor = mySharedPreferences.edit(); //用putString的方法保存数据 editor.putString("name", "Karl"); editor.putString("habit", "sleep"); //提交当前数据 editor.commit(); //使用toast信息提示框提示成功写入数据 Toast.makeText(this, "数据成功写入SharedPreferences!" , Toast.LENGTH_LONG).show();
执行以上代码,SharedPreferences将会把这些数据保存在test.xml文件中,可以在File Explorer的data/data下导出该文件,并查看。 那么已经保存好的数据如何读取出来呢。我们来看:
代码如下: [code] //同样,在读取SharedPreferences数据前要实例化出一个SharedPreferences对象 SharedPreferencessharedPreferences= getSharedPreferences("test", Activity.MODE_PRIVATE); // 使用getString方法获得value,注意第2个参数是value的默认值 String name =sharedPreferences.getString("name", ""); String habit =sharedPreferences.getString("habit", ""); //使用toast信息提示框显示信息 Toast.makeText(this, "读取数据如下:"+"\n"+"name:" + name + "\n" + "habit:" + habit, Toast.LENGTH_LONG).show();
源代码如下:
代码如下: public class Main extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } public void onClick_WriteData(View view) { SharedPreferences mySharedPreferences = getSharedPreferences("test", Activity.MODE_PRIVATE); SharedPreferences.Editor editor = mySharedPreferences.edit(); editor.putString("name", "karl"); editor.putString("habit", "sleep"); editor.commit(); Toast.makeText(this, "数据成功写入SharedPreferences!" , Toast.LENGTH_LONG).show(); } public void onClick_ReadData(View view) { SharedPreferences sharedPreferences = getSharedPreferences("test", Activity.MODE_PRIVATE); String name = sharedPreferences.getString("name", ""); String habit = sharedPreferences.getString("habit", ""); Toast.makeText(this, "读取数据如下:"+"\n"+"name:" + name + "\n" + "habit:" + habit, Toast.LENGTH_LONG).show(); } } 图1.1 程序执行结果
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具posts - 297,&
comments - 11,&
trackbacks - 0
1.创建一个SharedPreferences对象
SharedPreferences&spf = context.getSharedPreferences("imageload", Context.MODE_PRIVATE);
1.1第一个参数
整个存储信息的唯一标识:如 我根据 imageload 这个标识来获取对应标识下存储的内容。&
可以根据不同的需求创建不同标识的SharedPreferences对象
spf&1= context.getSharedPreferences("apkload", Context.MODE_PRIVATE);
spf2 = context.getSharedPreferences("user_info", Context.MODE_PRIVATE);
spf&3= context.getSharedPreferences("phonenumber", Context.MODE_PRIVATE);
1.2第二个参数
mode指定为MODE_PRIVATE,则该配置文件只能被自己的应用程序访问。(也可写成0)
mode指定为MODE_WORLD_READABLE,则该配置文件除了自己访问外还可以被其它应该程序读取。(也可写成1)
mode指定为MODE_WORLD_WRITEABLE,则该配置文件除了自己访问外还可以(也可写成2)
mode指定为MODE_APPEND,检查文件是否存在,存在就往文件追加内容,否则就创建新文件
2.实例化Editor对象
editor=spf.edit();
3.存储内容
editor.putString(“key”,"value");&//所有的存在Sp中的内容都是以键值对形式存储,即key和value
4.删除已存内容
editor.remove(url);//需要删除存储内容只需调用remove(),移除对应的key
5.修改已存内容
editor.putString(“key”,"value1");&//只要以存储是相同的key再次存储一遍,即可实现替换内容的功能(是不是很SB。。其实就是存储)
6.查看已存内容
6.1 查看指定key下对应的value值
String str=spf.getString(”key”, "&");//返回的数据即存在该key下的value值,而类型不同get的方法名也不同。如:返回int:
&spf.getInt("key",");
6.2 查看所有存储在指定标识下的SharedPreferences内的数据
Map&String,?& key_Value=(Map&String, ?&)spf.getAll(); //获取所有保存在对应标识下的数据,并以Map形式返回
只需遍历即可得到存储的key和value值
for(Map.Entry(String,String) entry:map.entyrset()){
Log.i("获取的key:"+entry.getkey(),"获取的value:"+spf.getString(entry.getkey()));
阅读(...) 评论()15:43 提问
使用shared preferences如何删除list item?
我有下面的adapter自定义类,创建了listview和items,但是我想在点击reset按钮时,从list中删除所有的items。
public class Scores extends Activity implements OnClickListener {
public static final String MY_PREFS_NAME = "PrefName";
static String[] tempTime = new String[10];
static String[] tempScore = new String[10];
private static class EfficientAdapter extends BaseAdapter {
private LayoutInflater mI
public EfficientAdapter(Context context) {
mInflater = LayoutInflater.from(context);
public int getCount() {
return tempTime.
public Object getItem(int position) {
public long getItemId(int position) {
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = mInflater.inflate(
R.layout.mathmatch_score_format, null);
holder = new ViewHolder();
holder.text1 = (TextView) convertView
.findViewById(R.id.time_text);
holder.text2 = (TextView) convertView
.findViewById(R.id.score_text);
/*final ImageView deleteButton = (ImageView)
convertView.findViewById(R.id.score_reset);
deleteButton.setOnClickListener(this);*/
convertView.setTag(holder);
//deleteButton.setTag(holder);
holder = (ViewHolder) convertView.getTag();
holder.text1.setText(tempTime[position]);
holder.text2.setText(tempScore[position]);
return convertV
static class ViewHolder {
TextView text1;
TextView text2;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mathmatch_score);
setUpViews();
pref = getSharedPreferences(MY_PREFS_NAME, 0);
strTime = pref.getString("high_score_times", "");
intScore = pref.getString("high_score_values", "");
tempTime = strTime.split(",");
tempScore = intScore.split(",");
Comparator&String& comparator = new CustomArrayComparator&String, String&(tempScore, tempTime);
Arrays.sort(tempTime, comparator);
Arrays.sort(tempScore, Collections.reverseOrder());
lv.setAdapter(new EfficientAdapter(this));
private void setUpViews() {
lv = (ListView) findViewById(R.id.list);
reset = (ImageView) findViewById(R.id.score_reset);
reset.setOnClickListener(this);
protected void onPause() {
super.onPause();
pref = getSharedPreferences(MY_PREFS_NAME, 0);
SharedPreferences.Editor edit = pref.edit();
edit.putString("high_score_times", strTime);
edit.putString("high_score_values", intScore);
edit.commit();
protected void onStop() {
super.onStop();
public void onClick(View v) {
switch (v.getId()) {
case R.id.score_reset:
AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
alertbox.setTitle("Reset");
alertbox.setMessage("Are you sure all time ans score are reset?");
alertbox.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
pref = getSharedPreferences(MY_PREFS_NAME, 0);
SharedPreferences.Editor edit = pref.edit();
/*edit.remove("high_score_times");
edit.remove("high_score_values");*/
/*edit.remove(intScore);
edit.remove(strTime);
//edit.clear();
edit.remove(MY_PREFS_NAME);
edit.commit();
alertbox.setNegativeButton("No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
Toast.makeText(getApplicationContext(), "'No' button clicked", Toast.LENGTH_SHORT).show();
alertbox.show();
Reset按钮不在list中。上面的代码是点击yes按钮事件,但是没有任何更新。如何改正这个问题呢?
按赞数排序
EfficientA//设为全局变量
当list数据改变后,需要调用adapter.notifyDataSetChanged();
这样显示才会改变.
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐

我要回帖

更多关于 shared ptr怎么使用 的文章

 

随机推荐