zoukankan      html  css  js  c++  java
  • 036 Android SharedPreferences(数据存储,需掌握)

    1.SharePrefences类介绍

      SharedPreferences 类提供了一个通用框架,以便您能够保存和检索原始数据类型的永久性键值对。 您可以使用 SharedPreferences 来保存任何原始数据:布尔值、浮点值、整型值、长整型和字符串。 此数据将跨多个用户会话永久保留(即使您的应用已终止亦如此)。

           文件存储位置://文件存放地址 //data/data/包名/shared_pres 

    2.使用方法

    3.xml布局

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        tools:context=".MainActivity">
    
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal"
            android:orientation="horizontal">
    
            <TextView
                android:id="@+id/textView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="请输入存储的数据:" />
    
            <EditText
                android:id="@+id/editText"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:ems="10"
                android:inputType="textPersonName" />
        </LinearLayout>
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal"
            android:orientation="horizontal">
    
            <Button
                android:id="@+id/button"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="存储" />
    
            <Button
                android:id="@+id/button2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="读取" />
        </LinearLayout>
    
        <TextView
            android:id="@+id/textView2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="TextView" />
    </LinearLayout>

    4.java后台

    package com.lucky.test45sharedpreferences;
    
    import android.content.SharedPreferences;
    import android.support.v7.app.AppCompatActivity;
    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 {
    
        EditText editText1;
        TextView textView2;
        Button button1;
        Button button2;
        SharedPreferences sharedPreferences;
        SharedPreferences.Editor editor;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            editText1=findViewById(R.id.editText);
            textView2=findViewById(R.id.textView2);
            button1=findViewById(R.id.button);
            button2=findViewById(R.id.button2);
    
            //1.获取SharedPreferences实例,去保存数据,参数1为生成的xml文件的名称,参数2是文件的模式
            sharedPreferences=getSharedPreferences("lucky",MODE_WORLD_WRITEABLE); //初始化SharedPreferences
            editor=sharedPreferences.edit();  //2.获取编辑器
            button1.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    editor.putString("001",editText1.getText().toString()); //3.放入所需存储的数据
                    editor.commit(); //4.提交数据
                }
            });
            button2.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    String str=sharedPreferences.getString("001",""); //读取数据,参数1为数据代号,参数2为默认值
                    textView2.setText(str);
                }
            });
        }
    }

    5.效果图

    动态1为:app效果图,动态2为:SharedPreferences存储的位置

        

    存储内容的XML文件截图:

  • 相关阅读:
    06 继承与多态
    动手动脑 4 String 类
    字串加密
    课后作业(查询类对象创建个数)
    动手动脑 3 类与对象
    动手动脑 (第二次)
    IOS 网络判断
    ios常用的几个动画代码
    iOS Get方式带中文不能请求网络
    UILabel Text 加下划线
  • 原文地址:https://www.cnblogs.com/luckyplj/p/10530297.html
Copyright © 2011-2022 走看看