android开发之-软件设置保存-快速学会使用SharedPreferences篇-实测
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了android开发之-软件设置保存-快速学会使用SharedPreferences篇-实测,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2895字,纯文字阅读大概需要5分钟。
内容图文
![android开发之-软件设置保存-快速学会使用SharedPreferences篇-实测](/upload/InfoBanner/zyjiaocheng/1053/7e9a358be5a040968367ddca3332f50d.jpg)
![bubuko.com,布布扣](/upload/getfiles/default/2022/11/17/20221117112350383.jpg)
![bubuko.com,布布扣](file:///C:/Documents%20and%20Settings/Administrator/Local%20Settings/Application%20Data/YNote/Data/yangxinghe_it@163.com/9ae2320c9bec4f2ebc11d31354c3197d/clipboard.png)
效果图
- 原文:
- Desired preferences file. If a preferences file by this name does not exist, it will be created when you retrieve an editor (SharedPreferences.edit()) and then commit changes (Editor.commit()).
解释:getSharedPreferences第一个参数userInfo为文件名称,得到的就是userInfo.xml,可以自己起名。
Context.MODE_PRIVATE = 0x0000
Context.MODE_WORLD_READABLE =
0x0001
Context.MODE_WORLD_WRITEABLE = 0x0002
Context.MODE_APPEND =
0x8000
Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容,如果想把新写入的内容追加到原文件中。可以使用Context.MODE_APPEND
Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件。
Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件。
MODE_WORLD_READABLE:表示当前文件可以被其他应用读取;MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入。
如果希望文件被其他应用读和写,可以传入:
openFileOutput("leigo.txt",
Context.MODE_WORLD_READABLE + Context.MODE_WORLD_WRITEABLE);
第二步:初始化添加数据:
代码2:
1
2
3
4
5
6
7
8
9
10
11
|
//获得编辑器信息,这个编辑器想一个map,它是以key-values形式存在的。
SharedPreferences.Editor edit=preferences.edit();
//将值添加到编辑器中
edit.putBoolean(
"isSendMsg"
, isSendMsg.isChecked());
edit.putBoolean(
"isCall"
, isCall.isChecked());
edit.commit();
//注意在没有preferences的时候这里进行创建。
|
添加完之后,我们打开文件可以看到存储的值。文件存储在data/data/package/shared_prefs下面, 如果你还不知道怎么查看本地手机文件请看这个android开发之-查看、编辑手机sqlite数据库文件-实测。
第三步:获得SharedPreferences 中的值,显示在手机中。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
SharedPreferences preferences = getSharedPreferences(PREFERENCES_NAME,Activity.MODE_PRIVATE);
//获得两个控件,用以展示。
isSendMsg = (Switch) findViewById(R.id.isSendMessage);
isCall = (Switch) findViewById(R.id.isCall);
//将 preferences.getBoolean("isSendMsg", true)信息取出来,赋值给控件,getBoolean的第二个参数是,如果preferences中没有这个值默认的设置的值。
isSendMsg.setChecked(preferences.getBoolean(
"isSendMsg"
,
true
));
isCall.setChecked(preferences.getBoolean(
"isCall"
,
false
));
|
1
|
好了,至此我们就学习完了怎么使用SharedPreferences了,另外应该注意在退出程序的时候记得保存信息,一般在onStop()方法中使用
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
@Override
protected
void
onStop() {
super
.onStop();
//停止的时候自动保存信息
SharedPreferences preferences=getSharedPreferences(PREFERENCES_NAME,Activity.MODE_PRIVATE);
SharedPreferences.Editor edit=preferences.edit();
edit.putBoolean(
"isSendMsg"
, isSendMsg.isChecked());
edit.putBoolean(
"isCall"
, isCall.isChecked());
edit.commit();
}
|
作为一个android初学者,第一次开博,错误之处难免,请大家多多包含,指教。
原文:http://www.cnblogs.com/dava/p/3684586.html
内容总结
以上是互联网集市为您收集整理的android开发之-软件设置保存-快速学会使用SharedPreferences篇-实测全部内容,希望文章能够帮你解决android开发之-软件设置保存-快速学会使用SharedPreferences篇-实测所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。