android学习之SharePreference

今天谈谈sharepreference,sharepreference是一种轻量级的数据库,主要是用来保存一些配置信息,它的本质就是一个xml文件,保存在data/data/package/名字,

贴代码:

package com.jk.logindemo;

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

public class MainActivity extends Activity {
	//获取名字和密码控件
	TextView tv_name, tv_key;
	//用来保存名字和密码的字符串
	String name, key;
	//写的SharedPreferences
	SharedPreferences shwrite;
	//读的SharedPreferences
	SharedPreferences shread;
	Editor e;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		//初始化控件
		init();

	}

	private void init() {
		//找到xml中对应名字的控件
		tv_name = (TextView) findViewById(R.id.name);
		//找到xml中对应密码的控件
		tv_key = (TextView) findViewById(R.id.key);
		//创建写的SharedPreferences的实例对象
		shwrite = getSharedPreferences("student", 0);
		//创建读的SharedPreferences的实例对象
		shread=getSharedPreferences("student", 0);
		//获得写对象的编辑器
		e = shwrite.edit();
	}

	public void onMyClick(View v) {
		//获得输入的name和key
		name = tv_name.getText().toString();
		key = tv_key.getText().toString();
		int id = v.getId();
		switch (id) {
		case R.id.btn_login:
			//跳转到登录
			login();
			break;
		case R.id.btn_register:
			//跳转到注册
			register();
			break;
		}
	}

	private void login() {
	   //获得储存在SharedPreferences的name和key
      String loginname=shread.getString("name","");
      String loginkey=shread.getString("key","");
      if((loginname.equals(name))&&(loginkey.equals(key))){
    	  Toast.makeText(this,"登陆成功",Toast.LENGTH_SHORT).show();
      }else{
    	  Toast.makeText(this,"登陆失败",Toast.LENGTH_SHORT).show();
      }
	}

	private void register() {
        //保存数据到编辑器
		e.putString("name", name);
		e.putString("key", key);
		//提交数据
		e.commit();
	}

}


你可能感兴趣的:(Android基础学习)