阅读背景:

Android的SharedPreferences的使用

来源:互联网 

工程目录:

MainActivity

package com.example.demo_eight;
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.EditText;
import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

import com.example.demo_eight.R;

public class MainActivity extends AppCompatActivity {
    private EditText et1, et2;
    SharedPreferences sp;

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

        et1 = findViewById(R.id.edit1);
        et2 = findViewById(R.id.edit2);
        sp = getPreferences(Activity.MODE_PRIVATE);
        String username = sp.getString("username", "");  //第2参数表示按键名取不到值时,设置为空串
        String password = sp.getString("password", "");
        et1.setText(username);
        et2.setText(password);

        Button btn1=findViewById(R.id.btn1);
        btn1.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                String s1 = et1.getText().toString();
                String s2 = et2.getText().toString();
                Toast.makeText(getApplicationContext(), "输入的用户名为" + s1 + ",输入的密码为" + s2, Toast.LENGTH_LONG).show();
            }
        });
        Button btn2=findViewById(R.id.btn2);
        btn2.setOnClickListener(new View.OnClickListener(){
            @Override
            public void onClick(View v) {
                et1.setText("");
                et2.setText("");
                Toast.makeText(getApplicationContext(), "取消登录", Toast.LENGTH_SHORT).show();
            }
        });

        CheckBox cb = findViewById(R.id.cb);
        cb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(CompoundButton arg0, boolean arg1) {
                if (arg1) {
                    Toast.makeText(MainActivity.this, "已保存登录信息", Toast.LENGTH_LONG).show();
                    sp.edit()
                            .putString("username", et1.getText().toString())
                            .putString("password", et2.getText().toString())
                            .commit();
                } else {
                    Toast.makeText(MainActivity.this, "不保存登录信息", Toast.LENGTH_LONG).show();
                    sp.edit()
                            .putString("username", null)
                            .putString("password", null)
                            .commit();
                }
            }
        });
    }
}

package c



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: