`
myclover
  • 浏览: 195049 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

android中SharedPreferences的实例

阅读更多
第六课,SharedPreferences的讲解,SharedPreferences是以xml文件来进行存储的,在手机应用中很多设置文件的存储就是使用SharedPreferences实现的。
package com.myclover.sharedpreferences;

import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.EditText;
import android.widget.RadioButton;

public class SharedPreferencesActivity extends Activity {
	private static final String TAG = "SharedPreferencesActivity";
	
	private EditText name;
	private EditText age;
	private EditText amount;
	private static String sex;
	private RadioButton male;
	private RadioButton female;
	

	@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        name = (EditText)findViewById(R.id.name);
        age = (EditText)findViewById(R.id.age);
        amount = (EditText)findViewById(R.id.amount);
        male = (RadioButton)findViewById(R.id.male);
        female = (RadioButton)findViewById(R.id.female);
        Button save = (Button)findViewById(R.id.save);
        Button query = (Button)findViewById(R.id.query);
        RadioButton male = (RadioButton)findViewById(R.id.male);
        RadioButton female = (RadioButton)findViewById(R.id.female);
        save.setOnClickListener(listener);
        query.setOnClickListener(listener);
        male.setOnCheckedChangeListener(changeListsner);
        female.setOnCheckedChangeListener(changeListsner);
    }
	
	
	private View.OnClickListener listener = new View.OnClickListener() {
		@Override
		public void onClick(View v) {
			Button bid = (Button)v;
			
			//文件所在的路径/data/data/com.myclover.sharedpreferences/shared_prefs/
			//执行该行代码默认在应用中创建一个以myclover命名的一个xml文件,myclover.xml
			//android底层是使用Pull技术把内容保存到XML文件中,为了确保全部内容都保存成功,所以最后需要调用commit方法进行提交
			SharedPreferences sp = SharedPreferencesActivity.this.getSharedPreferences("myclover", Context.MODE_PRIVATE);
			//执行该行代码默认在应用中创建一个以activity名称命名的一个xml文件,SharedPreferencesActivity.xml
//			SharedPreferences sp = SharedPreferencesActivity.this.getPreferences(Context.MODE_APPEND);
			
			Log.i(TAG, "click id = " + bid.getId());
			switch (bid.getId()) {
			case R.id.save:
				String inName = name.getText().toString();
				String inAge = age.getText().toString();
				String inAmount = amount.getText().toString();
				Editor edit = sp.edit();
				edit.putString("name", inName);
				edit.putString("sex", sex);
				edit.putInt("age", Integer.parseInt(inAge));
				edit.putLong("amount", Long.parseLong(inAmount));
				edit.commit();
				break;
			case R.id.query:
				name.setText(sp.getString("name", "myclover"));
				age.setText(String.valueOf(sp.getInt("age", 24)));
				amount.setText(String.valueOf(sp.getLong("amount", 10000)));
				if("male".equals(sp.getString("sex", "male")))
				{
					male.setChecked(true);
					female.setChecked(false);
				}
				else
				{
					male.setChecked(false);
					female.setChecked(true);
				}
				break;
			}
		}
	};
	
	
	private OnCheckedChangeListener changeListsner = new OnCheckedChangeListener()
    {
		@Override
		public void onCheckedChanged(CompoundButton buttonView,
				boolean isChecked) {
			RadioButton rid = (RadioButton)buttonView;
			Log.i(TAG, "change rid = " + rid.getId());
			switch (rid.getId()) {
			case R.id.male:
				if(isChecked)
				{
					male.setChecked(true);
					female.setChecked(false);
					sex = "male";
				}
				else
				{
					male.setChecked(false);
				}
				break;
			case R.id.female:
				if(isChecked)
				{
					male.setChecked(false);
					female.setChecked(true);
					sex = "female";
				}
				else
				{
					female.setChecked(false);
				}
				break;
			}
		}
    };
	
}
分享到:
评论

相关推荐

    Android SharedPreferences设置初始密码

    1. **获取SharedPreferences实例**:通常在需要使用SharedPreferences的类中,通过`getSharedPreferences()`方法获取实例。你需要提供一个名字(通常是应用的包名)和操作模式(如MODE_PRIVATE代表应用私有,不允许...

    android的SharedPreferences详解

    SharedPreferences是Android系统提供的一种轻量级的数据存储方式,它主要用于应用程序中简单数据的持久化存储,例如用户设置、应用状态等。SharedPreferences采用键值对的形式保存数据,支持基本类型如布尔、整型、...

    Android-Android系统SharedPreferences进行的封装

    - 获取SharedPreferences实例:可能通过`getSharedPreferences(String name, int mode)`方法,根据应用需求选择默认配置或自定义配置。 - 保存基本数据类型:如`putBoolean`, `putInt`, `putFloat`, `putLong`, `...

    Android代码-SharedPreferences实用工具类,可直接保存与读取实例对象,SharedPreferences中的ORM

    1. 读写实例对象 假设有一个Sample类(所有注解都是非必须的) @PrefModel("prefName")//"prefName"表示保存SharedPreferences的name,可为任意String字符串,若不添加此注解则为类全名 public class Sample { @...

    SharedPreferences简单实例

    首先,我们创建SharedPreferences实例,通常在需要使用SharedPreferences的类中通过以下方式获取: ```java SharedPreferences sharedPreferences = getSharedPreferences("MyPreferences", Context.MODE_PRIVATE);...

    SharedPreferences实例

    在本实例中,我们将深入探讨`SharedPreferences`的工作原理以及如何在实际应用中使用它。 `SharedPreferences` 提供了一种简单的方法来保存和读取用户设置或者应用的状态。它的操作通常分为两个部分:编辑(Edit)...

    android_sharedpreferences.rar

    可以通过`getSharedPreferences()`方法从`Context`对象(如Activity或Application)中获取SharedPreferences实例。例如: ```java SharedPreferences sharedPreferences = getSharedPreferences("MyPreferences",...

    Android中SharedPreferences知识的深入研究.pdf

    1. **获取SharedPreferences对象**:通常通过`Context`的`getSharedPreferences`方法来获取SharedPreferences实例,需要传入两个参数——文件名称和模式。文件名称是自定义的,用于区分不同的数据集;模式参数包括`...

    Android中SharedPreferences简单使用实例

    Android 中 SharedPreferences 简单使用实例 Android 中的 SharedPreferences 是一种轻量级的存储机制,用于存储小量的数据,如用户设置、游戏进度等。 SharedPreferences 提供了一个简单的键值对存储机制,通过键...

    Android 使用SharedPreferences实现数据的读写

    1. 获取SharedPreferences实例 要使用SharedPreferences,首先需要获取其实例。有两种方法: - `getSharedPreferences(String name, int mode)`:适用于全局偏好设置,需要传入文件名(默认为`PreferenceManager....

    Android SharedPreferences应用 本地注册登陆

    Android SharedPreferences应用 实现本地注册登陆 功能简单易懂(实例) http://blog.csdn.net/h1028962069/article/details/9129851 文章代码

    Android的SharedPreferences(用于保存系统设置)

    1. 获取SharedPreferences实例: - `getSharedPreferences(String name, int mode)`:通过Context上下文获取,`name`是SharedPreferences文件名,`mode`是访问模式(如MODE_PRIVATE、MODE_WORLD_READABLE、MODE_...

    Android数据存储——SharedPreferences(登入记住密码)

    首先,我们需要获取到SharedPreferences实例。这可以通过以下代码实现: ```java SharedPreferences sharedPreferences = getSharedPreferences("MyPreferences", MODE_PRIVATE); ``` 这里,"MyPreferences"是...

    Android使用SharedPreferences保存账号密码

    - 使用`edit()`方法获取`SharedPreferences.Editor`实例,这是进行写操作的对象。 - 使用`putString()`、`putInt()`、`putBoolean()`等方法添加键值对。例如,保存账号和密码: ``` SharedPreferences.Editor ...

    Android应用源码之SharedPreferences.zip

    - `getSharedPreferences(String name, int mode)`:这是获取SharedPreferences实例的方法,`name`是配置文件的名称,`mode`是访问模式,如私有(Context.MODE_PRIVATE)。 - `edit()`:返回一个`...

    Android Studio实例代码.zip_Android app实例_Android实例_android app源码_and

    综上所述,这个压缩包中的实例代码是学习和提升Android应用开发技能的宝贵资源。通过研究这些代码,开发者不仅可以了解Android开发的基本概念,还能接触到实际项目中的问题解决策略,从而成长为一名更出色的Android...

    Android通过SharedPreferences实现自动登录记住用户名和密码功能

    最近Android项目需要一个自动登录功能,完成之后,特总结一下,此功能依靠SharedPreferences进行实现。 SharedPreferences简介 SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value...

    android SharedPreferences

    首先,通过Context对象(例如Activity或Application)的getSharedPreferences()方法获取SharedPreferences实例,需要提供一个名称作为文件标识和操作模式(如MODE_PRIVATE)。例如: ```java SharedPreferences ...

    android的SharedPreferences用法举例源代码

    SharedPreferences是Android系统提供的一种轻量级的数据存储方式,主要用于存储应用程序中的配置信息或者简单的数据,如用户设置、应用状态等。它使用XML文件来持久化数据,并提供了方便的API供开发者进行读写操作。...

Global site tag (gtag.js) - Google Analytics