SharedPreferences 自动登录,记住密码

SharedPreferences是android中一种轻量级的数据存储方式

public class MainActivity extends Activity {
EditText username,pwd;
CheckBox rem,login;
Button btn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

    //获取控件
    username = (EditText) findViewById(R.id.user);
    pwd = (EditText) findViewById(R.id.pwd);
    rem = (CheckBox) findViewById(R.id.rem);
    login = (CheckBox) findViewById(R.id.login);
    btn = (Button) findViewById(R.id.btn);
    
   //获取sharedferences
    //第一个参数:配置文件的名字,  第二个参数是: 读取权限,一般都是私有MODE_PRIVATE
    final SharedPreferences sharedPreferences = getSharedPreferences("QMY", MODE_PRIVATE);
    //回显
    boolean isremember = sharedPreferences.getBoolean("isremember",false);
    String user = sharedPreferences.getString("username", "");
    String pass= sharedPreferences.getString("pwd", "");
    if(isremember){
    	username.setText(user);
    	pwd.setText(pass);
    	rem.setChecked(true);
    }
    
    //自动登录
    boolean islogin = sharedPreferences.getBoolean("islogin", false);
    if(islogin){
    	startActivity(new Intent(MainActivity.this,show.class));
    	finish();
    }
   //登录
    btn.setOnClickListener(new OnClickListener() {
		
		@Override
		public void onClick(View v) {
			String username1 = username.getText().toString().trim();
			String password = pwd.getText().toString().trim();
			if(rem.isChecked()){
				//存储数据
				Editor edit = sharedPreferences.edit();
				edit.putString("username", username1);
				edit.putString("pwd", password);
				//存储是否记住
				edit.putBoolean("isremember", true);
				edit.commit();
			}
			//判断是否选中自动登录
			if(login.isChecked()){
				Editor edit = sharedPreferences.edit();
				//存储自动登录
				edit.putBoolean("islogin", true);
				edit.commit();
			}
			startActivity(new Intent(MainActivity.this,show.class));
		    finish();
		}
	});
}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值