sharedpreferences数据保存

 实例134
 * 使用Sharedpreferences保存用户输入的用户名和密码,并在第二个Activity中显示
 * 
 * SharedPreferences 类供开发人员保存和获取基本数据类型的键值对,
 * 该类主要用于基本类型,如booleans,floats,ints,longs,strings。
 * 在应用程序结束后,数据仍会保存
 * (但是本例运行之后我发现,程序退出之后,数据没有保存,不知道哪里出错了还是别的原因)
 * 
 * 有两种方式可以获取SharedPreferences对象
 * (1) getSharedPreferences():如果需要打个使用名称来区分的共享文件,
 * 则可以使用该方法,其中第一个参数就是共享文件的名称,对于使用同一个名称获得的多个SharePregerences
 * 引用,其指向同一个对象
 * 
 * (2) getPreferences():如果Activity仅需要一个共享文件,则可以使用该方法.
 * 因为只有一个文件,它不需要提供名称
 * 
 * 完成向SharePreferences类添加值的方法步骤如下:
 * (1)调用SharedPreferences 类的editor() 方法获得SharedPreferences.Editor对象
 * (2)调用诸如putBoolean(),putString()等方法增加值
 * (3)使用commit()提交新值



写入数据:

package com.example.sharedpreferences_134;

import com.example.sharedpreferences2.R;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class SharedPreferencesWriteActivity01 extends Activity {
/*写入数据*/

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_shared_preferences_write);
		final EditText usernameET = (EditText) findViewById(R.id.username);
		final EditText passwordET = (EditText) findViewById(R.id.password);
		Button login = (Button) findViewById(R.id.login);
		login.setOnClickListener(new View.OnClickListener() {

			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				String username = usernameET.getText().toString();
				String password = passwordET.getText().toString();

				//设置SharedPreference 对象类型为私有类型
				SharedPreferences sp = getSharedPreferences("mrsoft", MODE_PRIVATE);
				Editor editor = sp.edit();
				editor.putString("username", username);
				editor.putString("password",  password);
				editor.commit();

				Intent intent = new Intent();
				intent.setClass(SharedPreferencesWriteActivity01.this, SharedPreferencesReadActivity01.class);
				startActivity(intent);
			}
		});
	}

}



读取数据:

package com.example.sharedpreferences_134;


import com.example.sharedpreferences2.R;


import android.os.Bundle;
import android.app.Activity;
import android.content.SharedPreferences;
import android.view.Menu;
import android.widget.TextView;


public class SharedPreferencesReadActivity01 extends Activity {
/*
* 实例134
* 使用Sharedpreferences保存用户输入的用户名和密码,并在第二个Activity中显示

* SharedPreferences 类供开发人员保存和获取基本数据类型的键值对,
* 该类主要用于基本类型,如booleans,floats,ints,longs,strings。
* 在应用程序结束后,数据仍会保存
* (但是本例运行之后我发现,程序退出之后,数据没有保存,不知道哪里出错了还是别的原因)

* 有两种方式可以获取SharedPreferences对象
* (1) getSharedPreferences():如果需要打个使用名称来区分的共享文件,
* 则可以使用该方法,其中第一个参数就是共享文件的名称,对于使用同一个名称获得的多个SharePregerences
* 引用,其指向同一个对象

* (2) getPreferences():如果Activity仅需要一个共享文件,则可以使用该方法.
* 因为只有一个文件,它不需要提供名称

* 完成向SharePreferences类添加值的方法步骤如下:
* (1)调用SharedPreferences 类的editor() 方法获得SharedPreferences.Editor对象
* (2)调用诸如putBoolean(),putString()等方法增加值
* (3)使用commit()提交新值

* */


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_shared_preferences_read_activity01);
TextView usernameTV = (TextView) findViewById(R.id.username);
TextView passwordTV = (TextView) findViewById(R.id.password);


//获取私有类型的SharedPerences
SharedPreferences sp = getSharedPreferences("mrsoft", MODE_PRIVATE);


String username = sp.getString("username", "mr");//获取用户名
String password = sp.getString("password", "001");//获取密码


usernameTV.setText("用户名:"+username);
passwordTV.setText("密    码:"+password);


}






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值