如何使用Sharedpreferences进行数据的存储?下面用一个登录界面的例子来介绍下这个函数的应用。
创新互联公司-专业网站定制、快速模板网站建设、高性价比平度网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式平度网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖平度地区。费用合理售后完善,10年实体公司更值得信赖。
下面是登录界面的代码:
以上三张图片分别是,头两张分别是登录界面的代码,最后一张是登录界面的具体图像。
下面是用java代码:
public class MainActivity extends AppCompatActivity {
private EditText et_username;
private EditText et_pwd;
private Checkbox cb_isSave;
private button btn_login;
private Sharedpreferences sp;
@Override
protected void onCreate(bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_username = (EditText) findViewbyId(R.id.et_username);
et_pwd = (EditText) findViewbyId(R.id.et_password);
cb_isSave = (Checkbox) findViewbyId(R.id.cb_isSave);
btn_login = (button) findViewbyId(R.id.btn_login);
btn_login.setOnClickListener(new MyonclickListener());
sp = getSharedpreferences("xhhkjinfo",MODE_pRIVATE);
boolean isSave = sp.getboolean("cb_isSave",false);
if (isSave){
String username = sp.getString("username","");
String pwd = sp.getString("pwd","");
et_username.setText(username);
et_pwd.setText(pwd);
cb_isSave.setChecked(true);
}
}
private class MyonclickListener implements View.OnClickListener {
@Override
public void onClick(View v){
String username = et_username.getText().toString().trim();
String pwd = et_pwd.getText().toString().trim();
if (TextUtils.isEmpty(username) || TextUtils.isEmpty(pwd)){
Toast.makeText(MainActivity.this,"用户名和密码不能为空",Toast.LENGTH_SHORT).show();
}else {
boolean checked= cb_isSave.isChecked();
Sharedpreferences.Editor editor= sp.edit();
if (checked){
editor.putString("username",username);
editor.putString("pwd",pwd);
}
editor.putboolean("cb_isSave",checked);
editor.commit();
}
}
}
}
其中代码很多,就不一一解释了,在郑州app开发其中最主要的是这两段,其中一个是点击事件中的Sharedpreferences.Editor editor= sp.edit();初始化, editor.putString("username",username);这个是利用putString方法把用户名给保存。 editor.putboolean("cb_isSave",checked);这个是用putboolean方法来进行布尔值得保存。
另外一个代码是onCreate中的 sp = getSharedpreferences("xhhkjinfo",MODE_pRIVATE);这个写入到xml文件,把获取到的用户名和密码写入到xml文件。剩下的就是从xml获取数据了。