博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 存储文件方式之一---SharedPreferences 内容提供者,以xml 的方式进行数据 存储。是一种轻量级的文件数据存储...
阅读量:5260 次
发布时间:2019-06-14

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

//UI界面的布局 文件 

 

package com.example.saveuserandpasswor; import android.app.Activity; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.widget.CheckBox; import android.widget.EditText; import android.widget.Toast; /**  *模拟一个简单的用户登录时保存密码的功能。该demo 没有对密码进行加密,处于安全考虑可以使用MD5或UUID进行密码加密  --后台代码  */public class MainActivity extends Activity {	private EditText userName;	private EditText password;	private CheckBox cb;	private SharedPreferences sp;// 内容提供者	@Override	public void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);		userName = (EditText) findViewById(R.id.UserName);//获取ui界面中的控件元素		password = (EditText) findViewById(R.id.Password);		cb = (CheckBox) findViewById(R.id.saveUserAndPassword);		sp = getSharedPreferences("save", MODE_PRIVATE);// 设置保存信息的配置文件是私有的文件,存储问文件形式以xml文件存储,其实就是一个map														// 集合		String username = sp.getString("username", "");		String pass = sp.getString("password", "");		if (username.length() != 0 && pass.length() != 0) {			userName.setText(username);			password.setText(pass);			cb.setChecked(true);		}	}	public void login(View view) {//在UI界面里面对Button按钮进行事件绑定,onclick() 方法 		String user = userName.getText().toString();		String pass = password.getText().toString();		boolean iscb = cb.isChecked();		Editor editor = sp.edit();// 获取编辑器		if (iscb) {// 如果checkbox 被选中则保存用户名和密码			editor.putString("username", user);			editor.putString("password", pass);		} else {			editor.putString("username", "");			editor.putString("password", "");		}		editor.commit();// 登陆完事后将用户输入的账号密码保存到配置文件中		Toast.makeText(getApplicationContext(), "登陆成功", Toast.LENGTH_SHORT)// 操作完成一个时间后执行的操作				.show();	}	@Override	public boolean onCreateOptionsMenu(Menu menu) {		getMenuInflater().inflate(R.menu.activity_main, menu);		return true;	}}

 

转载于:https://www.cnblogs.com/sm-myworks/p/Android.html

你可能感兴趣的文章
Winform传统DataGridView和DevExpress控件的GridControl两者表头全选功能的实现
查看>>
最大生成树
查看>>
图解LAJP在Windows系统上的安装配置
查看>>
C++ Primer Plus第6版18个重点笔记
查看>>
[转]同步对象Event的用法
查看>>
JS_基本语法
查看>>
变量自增越界后的结果
查看>>
【转】C语言堆栈入门——堆和栈的区别
查看>>
jQuery 演变史
查看>>
web自动化测试---自动化脚本设置百度搜索每页显示条数
查看>>
springmvc+spring+mybatis分页查询实例版本2.0
查看>>
【Android Studio安装部署系列】六、在模拟器上运行项目
查看>>
edittext触摸弹出soft input时,光标消失的解决办法
查看>>
字符串去重,过滤非数字或数字
查看>>
MySQL5.7初始密码查看及重置
查看>>
2018.8.15 题解 2018暑假集训之石子问题
查看>>
匿名内部类
查看>>
Uncaught SyntaxError: Unexpected identifier 报错 import Vue from 'vue';
查看>>
ubuntu13.10 修改grub
查看>>
汉化教程-工具
查看>>