SharedPreferences保存的数据是xml格式,也是存在数据保存的下面四种权限:

我们来看看

我们来看看具体的业务操作类:

/**
* 文件名:SharedPrecences.java
* 版权:版权所有 (C) 中国电科30所三部
* 描述:
* 修改人: wei.yuan
* 修改时间:2015/1/8
* 修改内容:新增
*/
package service; import android.content.Context;
import android.content.SharedPreferences; import java.util.HashMap;
import java.util.Hashtable;
import java.util.Map; /**
* 项目名称:SharedPreferences
* 类描述:
* 创建人:wei.yuan
* 创建时间:2015/1/8 10:29
* 修改人:wei.yuan
* 修改时间:2015/1/8 10:29
* 修改备注:
* 版权:版权所有 (C) 中国电科30所三部
*/
public class SharedPrecences {
private Context context; public SharedPrecences(Context context) {
this.context = context;
}
public void saveSharedPrecences(String name ,Integer age)
{
SharedPreferences sharedPrecences = context.getSharedPreferences("123", context.MODE_PRIVATE);//默认的格式是xml,123就不需要写后缀名
SharedPreferences.Editor editor = sharedPrecences.edit();//编辑文字
editor.putString("name",name);
editor.putInt("age", age);
editor.commit();//保存之后记得提交 }
/*
public void save(String name , Integer age) throws Exception{
SharedPreferences preference = context.getSharedPreferences("sclead", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = preference.edit();
editor.putString("name", name);
editor.putInt("age", age);
editor.commit();//把数据提交会文件
}
*/ public Map<String ,String> show()
{
Map<String,String > map = new Hashtable<String, String>();
SharedPreferences sharedPrecences = context.getSharedPreferences("123", context.MODE_PRIVATE);//默认的格式是xml,123就不需要写后缀名
map.put("name",sharedPrecences.getString("name","查找的字段不存在"));
map.put("age",String.valueOf(sharedPrecences.getInt("age", 0))); return map;
}
/*
*/
/**
* 获取各项配置参数
* @return
*//* public Map<String, String> getPreferences(){
Map<String, String> maps = new HashMap<String, String>();
SharedPreferences preference = context.getSharedPreferences("sclead", Context.MODE_PRIVATE);
maps.put("name", preference.getString("name", "你查找的字段不存在"));
maps.put("age", String.valueOf(preference.getInt("age", 0)));
return maps;
}
*/ }

我们来看看activity的代码是:

package test.weiyuan.sharedpreferences;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast; import java.util.Map; import service.SharedPrecences; public class MyActivity extends Activity {
private EditText name1,age1;
private TextView showText;
private Button saveButton ,showButton; SharedPrecences sharedPrecences = null; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
name1 = (EditText)this.findViewById(R.id.name);
age1 = (EditText)this.findViewById(R.id.age);
saveButton = (Button)this.findViewById(R.id.savebutton);
showButton = (Button)this.findViewById(R.id.showButton);
showText = (TextView)this.findViewById(R.id.showText); sharedPrecences = new SharedPrecences(getApplicationContext()); saveButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) { try {
/* sharedPrecences.save(name1.getText().toString(), Integer.valueOf(age1.getText().toString()));*/
String str = name1.getText().toString();
String str1 = age1.getText().toString();
sharedPrecences.saveSharedPrecences(str, Integer.valueOf(str1));
Toast.makeText(getApplicationContext(), "数据保存成功", Toast.LENGTH_LONG).show();
} catch (Exception e) {
e.printStackTrace();
} }
});
showButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Map<String,String> map = sharedPrecences.show();
name1.setText(map.get("name"));
Log.i("wy",map.get("name"));
showText.setText(map.get("name")+map.get("age"));
} });
} @Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.my, menu);
return true;
} @Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}

黎活明8天快速掌握android视频教程--16_采用SharedPreferences保存用户偏好设置参数的更多相关文章

  1. 黎活明8天快速掌握android视频教程--12_文件的保存与读取

    1.当前是把文件保存当前手机的app的data目录下 我们来看看操作保存文件的业务类 package contract.test.savafileapplication; import android ...

  2. 黎活明8天快速掌握android视频教程--20_采用ContentProvider对外共享数据

    1.内容提供者是让当前的app的数据可以让其他应用访问,其他应该可以通过内容提供者访问当前app的数据库 contentProvider的主要目的是提供一个开发的接口,让其他的应该能够访问当前应用的数 ...

  3. 黎活明8天快速掌握android视频教程--19_采用ListView实现数据列表显示

    1.首先整个程序也是采用mvc的框架 DbOpenHelper 类 package dB; import android.content.Context; import android.databas ...

  4. 黎活明8天快速掌握android视频教程--15_采用Pull解析器解析和生成XML内容

    1.该项目主要有下面的两个作用 (1)将xml文件解析成对象的List对象,xml文件可以来自手机本地,也可以来自服务器返回的xml数据 (2)强list对象保存成xml文件,xml保存到手机的内存卡 ...

  5. 黎活明8天快速掌握android视频教程--22_访问通信录中的联系人和添加联系人

    Android系统中联系人的通讯录的contentProvide是一个单独的apk,显示在界面的contact也是一个独立的apk,联系人apk通过contentProvide访问底层的数据库. 现在 ...

  6. 黎活明8天快速掌握android视频教程--14_把文件存放在SDCard

    把文件保存在手机的内部存储空间中 1 首先必须在清单文件中添加权限 <?xml version="1.0" encoding="utf-8"?> & ...

  7. 黎活明8天快速掌握android视频教程--27_网络通信之通过GET和POST方式提交参数给web应用

    1该项目主要实现Android客户端以get的方式或者post的方式向java web服务器提交参数 Android客户端通过get方式或者post方式将参数提交给后台服务器,后台服务器对收到的参数进 ...

  8. 黎活明8天快速掌握android视频教程--25_网络通信之资讯客户端

    1 该项目的主要功能是:后台通过xml或者json格式返回后台的视频资讯,然后Android客户端界面显示出来 首先后台新建立一个java web后台 采用mvc的框架 所以的servlet都放在se ...

  9. 黎活明8天快速掌握android视频教程--24_网络通信之网页源码查看器

    1 该项目的主要功能就是从将后台的html网页在Android的界面上显示出来 后台就是建立一个java web工程在工程尚建立一个html或者jsp文件就可以了,这里主要看Android客户端的程序 ...

随机推荐

  1. Java中的集合(二)单列集合顶层接口------Collection接口

    Java中的集合(二)单列集合顶层接口------Collection接口 Collection是一个高度封装的集合接口,继承自Iterable接口,它提供了所有集合要实现的默认方法.由于Iterab ...

  2. 【题解】P6218 [USACO06NOV] Round Numbers S

    题目传送门 这是一道数位DP. 令 \(dp_{i,j,k}\) 为满足由 \(i\) 位组成,且其中有 \(j\) 个1,第 i 位(从右往左数)为 \(k\) 的二进制数的数量. 可以得出状态转移 ...

  3. Rocket - debug - TLDebugModuleOuterAsync

    https://mp.weixin.qq.com/s/PSeMVZjSjEFHJgCYZzfa9Q 简单介绍TLDebugModuleOuterAsync的实现. 1. dmi2tl dmi2tl是T ...

  4. Take advantage of Checkra1n to Jailbreak iDevice for App analysis

    An unpatchable bootrom exploit called "checkm8" works on all iDevices up until the iPhone ...

  5. 【HIVE & Spark】将hive引擎换成Spark,运行速度快!怎么换?请看本文

    本教程仅仅是使用spark,能在hive用就行. 1.下载Spark; 2.WinSCP上传spark压缩包到虚拟机: 3.tar -zxvf spark-2.3.3-bin-without-hado ...

  6. Java实现 LeetCode 718 最长重复子数组(动态规划)

    718. 最长重复子数组 给两个整数数组 A 和 B ,返回两个数组中公共的.长度最长的子数组的长度. 示例 1: 输入: A: [1,2,3,2,1] B: [3,2,1,4,7] 输出: 3 解释 ...

  7. Java实现 蓝桥杯 算法提高 快乐司机

    算法提高 快乐司机 时间限制:1.0s 内存限制:256.0MB 问题描述 "嘟嘟嘟嘟嘟嘟 喇叭响 我是汽车小司机 我是小司机 我为祖国运输忙 运输忙" 这是儿歌"快乐的 ...

  8. Java实现 谁不爱打牌

    谁不爱打牌 [问题描述] BobLee最近在复习考研,但是他也喜欢打牌(有谁不爱玩牌呢?).但是作为一名ACMER,斗地主显然满足不了他的兴趣, 于是他和YYD一起YY出来了一个游戏规则,规则如下. ...

  9. java实现第六届蓝桥杯立方体自身

    立方变自身 题目描述 观察下面的现象,某个数字的立方,按位累加仍然等于自身. 1^3 = 1 8^3 = 512 5+1+2=8 17^3 = 4913 4+9+1+3=17 - 请你计算包括1,8, ...

  10. python—列表,元组,字典

    ——列表:(中括号括起来:逗号分隔每个元素:列表中的元素可以是数字,字符串,列表,布尔值等等) (列表元素可以被修改)  list(类)    (有序的) [1]索引取值:切片取值:for循环:whi ...