Android提供的轻量级数据储存方法,一般存少量数据,比如配置什么的。方式是通过键值对存取,比较方便。

下面通过一个 记住密码 的简单例子来说明

public class MainActivity extends AppCompatActivity {

    EditText user;
EditText psw;
Button button; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); user = (EditText)findViewById(R.id.user);
psw = (EditText)findViewById(R.id.psw);
button = (Button)findViewById(R.id.button); //启动的时候读取SharePerences,读取data这个文件,访问模式私有
SharedPreferences preferences = getSharedPreferences("data",MODE_PRIVATE);
//读取数据,判断有没有点击记住密码
boolean isRemember = preferences.getBoolean("remember",false);
if(isRemember){ Log.d("TAG","remember");

       //读取数据
String u = preferences.getString("user","");
String p = preferences.getString("psw",""); user.setText(u);
psw.setText(p); } button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) { String u = user.getText().toString();
String p = psw.getText().toString();

          //创建,注意和读取的时候不同,这个是edit,两个参数分别为存储数据的文件data,访问模式私有
SharedPreferences.Editor editor = getSharedPreferences("data",MODE_PRIVATE).edit();

          //存数据
editor.putString("user",u);
editor.putString("psw",p);
editor.putBoolean("remember",true);

          //提交
editor.commit(); }
}); }
}

开机就会补全帐号密码

SharePreferences基本用法的更多相关文章

  1. SharePreferences的用法

    1.创建 sharepreferences的方法: 首先创建该对象: 例如:(注意现在后面的模式7.0可以使用的只有 MODE_PRIVATE,其他全过时了 ) SharedPreferences s ...

  2. EditText 基本用法

    title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...

  3. jquery插件的用法之cookie 插件

    一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...

  4. Java中的Socket的用法

                                   Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...

  5. [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法

    一.C#中MessageBox.Show用法 MessageBox.Show (String) 显示具有指定文本的消息框. 由 .NET Compact Framework 支持. MessageBo ...

  6. python enumerate 用法

    A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , whe ...

  7. [转载]Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结

    本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...

  8. 【JavaScript】innerHTML、innerText和outerHTML的用法区别

    用法: <div id="test">   <span style="color:red">test1</span> tes ...

  9. chattr用法

    [root@localhost tmp]# umask 0022 一.chattr用法 1.创建空文件attrtest,然后删除,提示无法删除,因为有隐藏文件 [root@localhost tmp] ...

随机推荐

  1. Google内部培训过1.8万人的机器学习速成课

    什么是(监督)机器学习?简而言之,它是以下几点: ML系统学习如何组合输入以产生对从未见过的数据的有用预测. 我们来探讨基本的机器学习术语. 标签 一个标签是我们预测物品的属性,比如变量y在简单线性回 ...

  2. linux环境搭建记录

    第一次搭建环境,部署服务,在此记录一下过程 1.项目用到的hosts设置好 2.mkdir data,在data文件夹下建server,log,soft,resource路径,上载jdk.zip到so ...

  3. JavaScript HTML Handlebars Template

    /********************************************************************* * JavaScript HTML Handlebars  ...

  4. 类的析构方法__del__

    析构方法: 语法: class 类名: def __del__(self): ... 说明: 析构方法在对象被销毁时被自动调用 python建议不要在对象销毁时做任何事情,因为销毁的时间难以确定 cl ...

  5. C++调用SQLServer存储过程

    同事手头的C++工程中涉及SQLServer数据库的操作需要优化,说是测试调用存储过程失败,提示: 要了C++的源码: 折腾半天,最终定位问题,问题不在C++的代码,而是SQLServer的存储过程要 ...

  6. 如何将常规的web 应用程序转化为云上多租户 SaaS 解决方案

    如何将web 应用程序转化为多租户 SaaS 解决方案 https://www.ibm.com/developerworks/cn/cloud/library/cl-multitenantsaas/i ...

  7. Could not transfer artifact org.springframework:spring-tx:jar:3.2.3.RELEASE

    在maven中加入依赖时,如果jar下载失败,这时pom文件中就会出现上面的错误,重新添加也不好用, 这时要手动去maven库中删除已经下载的依赖包. 默认库位置:C:\Users\XXX\.m2

  8. uwsgi配置理解

    最近使用uwsgi 部署了flask应用,出现了不少问题,仔细查阅了一下资料以及翻看了官方文档,就对自己了解到的做个总结~~ 一.http/http-socket/socketuwsgi开头当然少不了 ...

  9. [MEF]第03篇 MEF延迟加载导出部件及元数据

    一.演示概述此演示介绍了MEF的延迟加载及元数据相关的内容.在实际的设计开发中,存在着某些对象是不需要在系统运行或者附属对象初始化的时候进行实例化的,只需要在使用到它的时候才会进行实例化,这种方式就可 ...

  10. gradle 配置java 项目maven 依赖

     1. 内置的 repositories { mavenCentral() } 2. maven 私服 repositories { maven { url "http://maven.al ...