Android开发:SharedPreferences设置密码的保存与读取

文章目录

  • SharedPreferences
    • 设置密码的保存与读取
    • 效果


SharedPreferences

SharedPreferences是Android中的一种数据存储方式。
使用SharedPreferences实现对密码的保存与读取,这是在登录账号时【记住密码】功能的简化操作。

设置密码的保存与读取

activity.xml


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical">

    <EditText
        android:id="@+id/BCEditText"
        android:layout_width="346dp"
        android:layout_height="55dp"
        android:ems="10"
        android:inputType="textPassword"
        android:password="true" />

    <Button
        android:id="@+id/BCButton4"
        android:layout_width="134dp"
        android:layout_height="wrap_content"
        android:backgroundTint="#FFEB3B"
        android:rotationX="360"
        android:text="保存密码"
        android:textColor="#2196F3"
        android:textSize="15sp" />

    <Button
        android:id="@+id/BCButton3"
        android:layout_width="130dp"
        android:layout_height="wrap_content"
        android:backgroundTint="#FFEB3B"
        android:rotationX="360"
        android:text="读取密码"
        android:textColor="#03A9F4"
        android:textSize="15sp" />

    <TextView
        android:id="@+id/BCTextView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="读取密码(显示出来)"
        android:textSize="20sp" />

LinearLayout>

MainActivity.java

package com.pkg.myservice;

import androidx.annotation.RequiresApi;
import androidx.appcompat.app.AppCompatActivity;

import android.app.Notification;
import android.app.NotificationManager;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.SharedPreferences;
import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

    private Button button,button2,button3,button4;
    private TextView textView;
    private MyBroadcastReceiver myBroadcastReceiver;
    private NotificationManager manager;
    private Notification.Builder builder;

    //数据存储操作
    private SharedPreferences sp;   //数据存储
    private EditText editText;      //输入密码
    private TextView textView2;       //将读取到的密码保存到textView2

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


        //sp的数据存储操作——密码保存与读取操作
        button3 = findViewById(R.id.BCButton3);
        button4 = findViewById(R.id.BCButton4);
        editText = findViewById(R.id.BCEditText);
        textView2 = findViewById(R.id.BCTextView2);

        sp=getSharedPreferences("xr", Context.MODE_PRIVATE);
        SharedPreferences.Editor editor = sp.edit();    //对编辑器进行声明
        //sp的数据存储操作——保存密码操作
        button4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                editor.putString("keyword",editText.getText().toString());
                editor.commit();
            }
        });

        //sp的数据存储操作——读取密码
        button3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String str = sp.getString("keyword","");
                textView2.setText(str); //读取密码显示到textView2中
            }
        });
    }
}

效果

输入密码,点击保存密码
Android开发:SharedPreferences设置密码的保存与读取_第1张图片
点击读取密码就可以将保存的密码显示出来

Android开发:SharedPreferences设置密码的保存与读取_第2张图片

忽视掉软件中的【自定义广播】【发送广播】【发送通知】这些功能,与本次内容无关,因为这些也是在同一个Activity中的,懒得再重新弄一个activity,就都写在一起了。

你可能感兴趣的:(android,笔记,android,java)