20161215

安卓存储之sp存储:SharePreferences

它提供一种轻量级的数据存储方式,通过eidt()方法来修改里面的内容,通过Commit()方法来提交修改后的内容。

一些重要方法:

public abstract boolean contains (String key) :检查是否已存在该文件,其中key是xml的文件名。

edit():为preferences创建一个编辑器Editor,通过创建的Editor可以修改preferences里面的数据,但必须执行commit()方法。

getAll():返回preferences里面的多有数据。

getBoolean(String key, boolean defValue):获取Boolean型数据

getFloat(String key, float defValue):获取Float型数据

getInt(String key, int defValue):获取Int型数据

getLong(String key, long defValue):获取Long型数据

getString(String key, String defValue):获取String型数据

registerOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener):注册一个当preference发生改变时被调用的回调函数。

unregisterOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener):删除当前回调函数。

重要的接口:SharePreferences.editor  用于修改SharedPreferences对象的内容,所有更改都是在编辑器所做的批处理,而不是复制回原来的SharedPreferences或持久化存储,直到你调用commit(),才将持久化存储,里面重要的方法:

clear():清除内容。

commit():提交修改

remove(String key):删除preference

写内容:

sp = getSharedPreferences("UserInfo", 0);
 sp.edit().putBoolean("cbal", isChecked).commit();
 UserInfo是指xml文件的文件名,如果此文件已存在则直接向其中写内容“isChecked”的值,首先通过SharedPreferences的edit()方法创建editor,然后调用commit()方法提修改

读内容:

sp = getSharedPreferences("UserInfo", 0);
  etAccount.setText(sp.getString("account", null));
  etPW.setText(sp.getString("password", null));
  cbal.setChecked(sp.getBoolean("cbal", false));
  cbrp.setChecked(sp.getBoolean("cbrp", false));

 

这个轻量级储存时用的最方便和最多的了。

时间: 2024-08-27 13:10:08

20161215的相关文章

微信公众平台开发问答-20161215

================================================================ 消息分组:QQ群 518924126================================================================消息对象:微信平台开发有问必答群================================================================ 2016-11-16 18:15:33 [师

【Java每日一题】20161215

package Dec2016; public class Ques1215 { static final int num1 = 2; static final int num2 = 3; static int num3 = 2; static int num4 = 3; public static void main(String[] args){ int result1 = num1 * num2; // 1 int result2 = num3 * num4; // 2 } } 今日问题:

Python学习记录-2016-12-15

因为作业关系,跳转听了部分课程,现在记录如下: List列表部分: 列表的写法: names = ["zhangsan", "lisi", "zhaowu", "wangliu", "qianqi"] 列表的index: 打印从左侧到第三个: print(names[0:2]) 打印从第三个到结束: print(names[2:4]) print(names[-3:]) 打印从第二个到第三个: print(

PHP课程总结20161215

今天的课程,老师主要介绍了数组函数的用法. 一.总结 1.今天我们主要学习的函数有:count(常用),array_combine,array_count_values,array_diff,array_flip,array_intersect,array_key_exists,in_array,array_keys,array_merge(常用),array_pop(常用),array_push(常用),array_rand,range(常用),array_replace,array_reve

运维python进行(一) nmap扫描端口

介绍 python-nmap是基于系统nmap命令的一个端口扫描工具,使用简单方便. 最近为了加强服务器安全性和监管,需要每天把公司服务器开放端口扫描记录,一旦出现增加减少能发现. 之前使用shell写过一个https://github.com/bashhu/monitor-shell/blob/master/python-script/scan_port.sh 最近打算完善一下我们的运维平台,重新编写了脚本,方便平台的调用 https://github.com/bashhu/monitor-s

9天C#转Java学习过程,自己记录一下

其实没有完整的9天,就是连续每天花点时间,过程so frustrated,踩坑无数...下面是学习过程的记录 第1天 开始正式学习JavaEE,已完成: 1. Tomcat安装: 2. Tomcat配置.完成了IIS占用的80端口停用,将Tomcat监听端口改为80端口,然后修改hosts,增加解析www.javademo.dev到127.0.0.1.然后写了一个最简单hello-world html页面,在浏览器输入前面的网址可以访问.Tomcat/conf/server.xml配置如下: <

无外网情况下RPM方式安装MySQL5.6

RPM方式安装MySQL5.6 a. 检查MySQL及相关RPM包,是否安装,如果有安装,则移除(rpm –e 名称) 1 [[email protected] ~]# rpm -qa | grep -i mysql 2 mysql-libs-5.1.66-2.el6_3.x86_64 3 [[email protected] ~]# yum -y remove mysql-libs* b. 下载Linux对应的RPM包,如:CentOS6.4_64对应的RPM包,如下:这里给出我下载好的包,官

Elasticsearch问题总结

1.ES大量做FULL GC,日志如下: [2016-12-15 14:53:21,496][WARN ][monitor.jvm ] [vsp4] [gc][old][94725][4389] duration [26.9s], collections [1]/[27s], total [26.9s]/[15.9h], memory [19.7gb]->[17gb]/[19.8gb], all_pools {[young] [1.1gb]->[43.1mb]/[1.1gb]}{[surviv

SVN之三:Visualsvn Server简易部署及目录权限

1.概述 Visualsvn Server是一个免费的Windows Apache Subversion服务器包.服务器包包含一个精简Apache HTTP服务器.Subversion服务器.和一个微软管理控制台配置界面,可以一键安装Subversion服务器在Windows平台之上.简单易用,同时也可以实现较为复杂目录权限管理. 官网有两个版本:https://www.visualsvn.com/server/,标准版free.企业版有45天评估期,是no free. 2.环境介绍 serve