Android 数据存储:SharePreferences

数据存储:SharePreferences

public class MainActivity extends AppCompatActivity{
  EditText useName, password;
  Button button1, button2;

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    useName = findViewById(R.id.useName);
    password = findViewById(R.id.password);
    button1 = findViewById(R.id.button1);
    button2 = findViewById(R.id.button2);

    // 定义一个 SharedPreferences
    // getSharedPreferences 有两个参数 name,mode
    // name 根据自己的需要自行定义
    // mode 模式常用的有三种:MODE_PRIVATE, MODE_WORLD_READABLE, MODE_WORLD_WRITEABLE
    // MODE_PRIVATE: 只能被自己的应用程序访问
    // MODE_WORLD_READABLE: 除了自己访问外还可以被其它应该程序读取
    SharedPreferences preferences = getSharedPreferences("myShared", MODE_PRIVATE);
    String account = preferences.getString("account", "");
    String pwd = preferences.getString("pwd", "");

    useName.setText(account);
    password.setText(pwd);

    // 添加缓存
    button1.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View view) {
        String tempAcc = useName.getText().toString();
        String tempPwd = password.getText().toString();

        // 实例化编辑
        SharedPreferences.Editor edit = preferences.edit();
        // 添加存储信息
        edit.putString("account", tempAcc);
        edit.putString("pwd", tempPwd);
        // 重要一步 添加完成之后 需要提交信息
        edit.commit();

        Toast.makeText(MainActivity.this, "保存成功", Toast.LENGTH_SHORT).show();
      }

    });

    // 清除缓存
    button2.setOnClickListener(new View.OnClickListener() {
      @Override
      public void onClick(View view) {
        // 实例化编辑
        SharedPreferences.Editor edit = preferences.edit();
        // 添加存储信息
        edit.remove("account");
        edit.remove("pwd");
        // 重要一步 添加完成之后 需要提交信息
        edit.commit();

        // 清空之后进行UI重载
        useName.setText(
            preferences.getString("account", "")
        );
        // 清空之后进行UI重载
        password.setText(
            preferences.getString("pwd", "")
        );

        Toast.makeText(MainActivity.this, "清除成功", Toast.LENGTH_SHORT).show();
      }
    });
  }
}

界面效果图

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值