博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SharedPreference自动保存登录信息
阅读量:2299 次
发布时间:2019-05-09

本文共 2883 字,大约阅读时间需要 9 分钟。

package com.leno.ex_data;import android.app.Activity;import android.content.Context;import android.content.SharedPreferences;import android.content.SharedPreferences.Editor;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.CheckBox;import android.widget.CompoundButton;import android.widget.EditText;import android.widget.Toast;import android.widget.CompoundButton.OnCheckedChangeListener;public class ex_data extends Activity {	/** Called when the activity is first created. */	private EditText et_login, et_password;	private CheckBox cbx_save;	private Button btn_login;	private SharedPreferences sp;	private Context context;	private boolean is_check=true;	@Override	public void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.main);		context = (Context)this;		et_login = (EditText) findViewById(R.id.editText_Login);		et_password = (EditText) findViewById(R.id.editText_Password);		sp = getSharedPreferences("ex_data", MODE_WORLD_READABLE);		/**		 * @保存方式:SharedPreference		 * @注意:SharedPreference 		 * @操作模式: Context.MODE_PRIVATE:新内容覆盖原内容 Context.MODE_APPEND:新内容追加到原内容后		 *        Context.MODE_WORLD_READABLE:允许其他应用程序读取		 *        Context.MODE_WORLD_WRITEABLE:允许其他应用程序写入,会覆盖原数据。		 */		// getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,		// WindowManager.LayoutParams.FLAG_FULLSCREEN);		// this.requestWindowFeature(Window.FEATURE_NO_TITLE);		// setContentView(R.layout.main);		cbx_save = (CheckBox) findViewById(R.id.login_cb_savepwd);		is_check = sp.getBoolean("save", true);		if (is_check) {			cbx_save.setChecked(true);			//选择保存,则取出数据			String name = sp.getString("login", "");			String psw = sp.getString("password", "");			et_login.setText(name);			et_password.setText(psw);		}else {			cbx_save.setChecked(false);			et_login.setText("");			et_password.setTag("");		}				btn_login = (Button) findViewById(R.id.login_btn_login);		btn_login.setOnClickListener(new OnClickListener() {						@Override			public void onClick(View v) {				// TODO Auto-generated method stub				if (et_login.getText().toString().equals(""))					Toast.makeText(context, "请输入帐号!", 1000).show(); 				else if (et_password.getText().toString().equals(""))					Toast.makeText(context, "请输入密码!", 1000).show(); 				else {					if (cbx_save.isChecked()) {						//保存数据						Editor editor =sp.edit();						editor.putString("login",et_login.getText().toString());						editor.putString("password", et_password.getText().toString());						editor.putBoolean("save", true);						editor.commit();						Toast.makeText(context, "登录成功!", 1000).show(); 					}else {						sp.edit().putString("login","")						.putString("password", "")						.putBoolean("save", false)						.commit();												Toast.makeText(context, "登录成功!", 1000).show(); 					}			}		}});		}}

转载地址:http://xfkib.baihongyu.com/

你可能感兴趣的文章
深入FFM原理与实践
查看>>
用python实现一个神经网络
查看>>
tensorflow实现AlexNet
查看>>
CNN笔记:通俗理解卷积神经网络
查看>>
在tensorflow中使用CNN
查看>>
scala集合操作
查看>>
基于tensorflow实现word2vec
查看>>
1x1卷积核如何降低参数量
查看>>
DenseNet 简介
查看>>
python快速入门
查看>>
学习经历与求职经历分享
查看>>
python中ndarray与dataframe互转
查看>>
在Python中使用多进程快速处理数据
查看>>
基于sklearn同时处理连续特征和离散特征
查看>>
安卓app开发项目管理必备工具(干货!)
查看>>
ButterKnife(8.4.0版本)原理分析
查看>>
深入理解Java内存模型
查看>>
Java对象到底多大?
查看>>
Swift3.0学习笔记-The Basics(对比Java)
查看>>
贝壳找房APP安装包瘦身
查看>>