Android学习总结——SharedPreferences
SharePreferences存储方式,只是轻量级数据存储,xml格式的数据显示方式。
简单存储步骤如下:
一:获取SharePreferences对象
1.SharedPreferences pref = getSharedPreferences(文件名,访问权限);
或者
2.SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this);
二:创建对象的方法实例
pref.Editor editor = pref.edit();
三:往文件中添加数据
editor.putXxxx(key,value);
Xxxx代表value的数据类型。
四:提交editor
editor.commit();
//获得SharedPreferences对象
SharedPreferences spf=getSharedPreferences("data",MODE_PRIVATE);
//获得SharedPreferences.Editor对象
SharedPreferences.Editor edit=spf.edit();
//通过Editor接口的putXxx方法保存key-value对 其中Xxx表示不同的数据类型
edit.putString("name","yang");
//通过Editor接口的commit方法保存key-value
edit.commit();
获取存储的值:
spf.getString("name","");
package com.example.sharedpreferencedemo1; import android.content.SharedPreferences;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast; public class MainActivity extends AppCompatActivity implements View.OnClickListener{
private EditText user,pwd;
private CheckBox SaveUser;
private Button login;
private SharedPreferences spf;
private SharedPreferences.Editor editor; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); user= (EditText) findViewById(R.id.et_User);
pwd= (EditText) findViewById(R.id.et_Pwd);
SaveUser=(CheckBox) findViewById(R.id.cb_SaveUser);
login=(Button) findViewById(R.id.btn_Login); login.setOnClickListener(this); spf=getSharedPreferences("myPref", MODE_PRIVATE);
editor=spf.edit(); if(spf.getString("name","").equals("")){
SaveUser.setChecked(false);
}else {
SaveUser.setChecked(true);
user.setText(spf.getString("name",""));
}
} @Override
public void onClick(View v) {
//获取界面的用户名和密码,trim()方法去除输入的空格
String name=user.getText().toString().trim();
String Pwd=pwd.getText().toString().trim(); switch (v.getId()){
case R.id.btn_Login:
if(name.equals("yxch")&&Pwd.equals("123456")){
if(SaveUser.isChecked()){
editor.putString("name",name);
editor.commit();
}
else {
editor.remove(name);
editor.commit();
}
Toast.makeText(this,"登录成功!",Toast.LENGTH_SHORT).show();
}else {
Toast.makeText(this,"用户名:yxch 密码:123456",Toast.LENGTH_SHORT).show();
}
break;
}
}
}
Android学习总结——SharedPreferences的更多相关文章
- Android学习之SharedPreferences类
SharedPreferences类 android.content.SharedPreferences 类概括: 访问和修改由函数getSharedPreferences(String,int)返回 ...
- Android学习之SharedPreferences
SharedPreferences使用键值对的方式来存储数据,并支持多种不同类型的数据存储. 1.界面布局 <TableLayout xmlns:android="http://sch ...
- Android学习路线总结,绝对干货
title: Android学习路线总结,绝对干货 tags: Android学习路线,Android学习资料,怎么学习android grammar_cjkRuby: true --- 一.前言 不 ...
- android学习系列:jercy——AI3 的博客
[android学习之十七]——特色功能2:桌面组件(快捷方式,实时文件夹) 二.桌面组件 1.快捷方式 Android手机上得快捷方式的意思可以以我们实际PC机器上程序的快捷方式来理解.而andro ...
- Android学习路线(二十四)ActionBar Fragment运用最佳实践
转载请注明出处:http://blog.csdn.net/sweetvvck/article/details/38645297 通过前面的几篇博客.大家看到了Google是怎样解释action bar ...
- 我的Android学习之旅(转)
去年大概在七月份的时候误打误撞接触了一阵子Android,之后由于工作时间比较忙,无暇顾及,九月份的时候自己空闲的时间比较多,公司相对来说加班情况没以前严重.开启了个人的Android学习之旅,初衷是 ...
- Xamarin.Android学习之应用程序首选项
Xamarin.Android学习之应用程序首选项 一.前言 任何App都会存在设置界面,如果开发者利用普通控件并绑定监听事件保存设置,这一过程会非常的枯燥,而且耗时.我们可以看到Android系统的 ...
- 《Android学习指南》目录
源:<Android学习指南>目录 Android学习指南的内容分类: 分类 描述 0.学习Android必备的Java基础知识 没有Java基础的朋友,请不要先看Android的课程,这 ...
- wemall app商城源码Android数据的SharedPreferences储存方式
wemall-mobile是基于WeMall的Android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享wemall app商城源码Android数据 ...
随机推荐
- add.fun.php
<?php header("Content-type: text/html; charset=utf-8"); function add($min_int,$max_int) ...
- pyqt 同时勾选多个items(网友提供学习)
框选多个item之后,用空格键可以勾选/去选多个item,效果如下图所示: http://oglop.gitbooks.io/pyqt-pyside-cookbook/list/img/checkbo ...
- python高级编程之访问超类中的方法:super()
# -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' #超类01 #它是一个内建类型,用于访问属于某个对象超类特性 pri ...
- Find the maximum(规律,大数)
Find the maximum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65768/65768 K (Java/Others) ...
- [Javascript] How to write a Javascript libarary
Create package.json file //npm settings npm set init-author-name 'username' npm set init-author-emai ...
- ArrayList的分析(转)
一. ArrayList概述: ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存. ArrayList不是线程安全的,只能用在单线程环境 ...
- MVC中的AppendTrailingSlash以及LowercaseUrls
asp.net MVC是一个具有极大扩展性的框架,可以在从Url请求开始直到最终的html的渲染之间进行扩展,所以要学好还是需要了解框架的运行原理,推荐Artech. 今天我们回忆的不是MVC中的fi ...
- Installing the Eclipse Plugin
Installing the Eclipse Plugin Android offers a custom plugin for the Eclipse IDE, called Android Dev ...
- Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践
欢迎转载,转载时请保留全文及出处. Apache 2.4.7在CentOS6.4中安装配置反向代理解决单外网IP对应多个内网主机的方法实践 Apache安装 下载源程序(http://httpd.ap ...
- Spark集群搭建简要
Spark集群搭建 1 Spark编译 1.1 下载源代码 git clone git://github.com/apache/spark.git -b branch-1.6 1.2 修改pom文件 ...