zoukankan      html  css  js  c++  java
  • .SharedPreferences 介绍

    SharedPreferences 是一种轻量级别的数据存储方式,以键值对的形式存储数据,主要存储的是程序中的一些配置信息。

      该种方法存储数据简单方便,速度很快,不同于数据库存放大数据的耗时操作。

      注意:

         1.该种方法只能存储基本数据类型。存储文件类型是xml

         2.存储位置 data/data/应用程序的包名/shared_prefs/共享文件

       创建SharedPreferences有两种方式:

        1,getSharedPreferences(String name,int mode)  :

          如果程序中需要多个preferences文件时,采用该方法,参数一用于指定该文件的文件名;参数二指定文件的读写模式

        2,getPreferences()  : 

        如果程序中只需要一个preferences文件,采用该方法。该文件不需要指定名字。

      采用SharedPreferences接口进行数据存去的流程

      1,SharedPreferences pres = getSharedPreferences("app",Context.MODE_PRIVATE );

      2, SharedPreferences.Editor editor = pres.edit();

      3, editor.putBoolean("first",true);  //存数据

      4, editor.commit();  

     4, editor.getBoolean("first",false); //取数据

       SharedPreferences方法的说明:

          SharedPreferences 的getxxx()方法有两个参数,这不同于集合、Bundle、ContentVlaues等的键值对数据的获取。

          eg. getBoolean("app",true);  获取键值对中key是app的值,如果不存在该key对应的值,那么就返回true。

                 String value = getString("apk","")  同理,若不存在apk对应的值,那么就返回空字符串,并将空字符串赋给value; 

      SharedPreferences在开发中实现引导界面的显示:

       

     //获取文件名为info的preference文件,如果不存在该文件就自动创建该文件。第二个参数设置该文件只能被本应用程序访问 

    SharedPreferences  preference = Context.getSharedPreferences("info",Context.MODE_PRIVATE);

     //添加判断语句,如果程序时第一次启动,则跳转到引导界面。否则不显示引导界面,直接进入程序的主页。

     if(preference.getBoolean("first",true)){  //此处,info文件内容为空,所以返回值是true,可以执行加载引导页的代码

               Intent intent = new Intent(MainActivity.this,Leading.class);

               startActivity(intent);

               // 引导界面显示成功后,向info文件中存入数据,用于程序之后启动时判断;

              Editor editor = preference.edit();

             editor.putBoolean("first",false);

             editor.commit();  

    }else{

         //显示程序主界

    }

       通过putInt()判断

          int  num = 0;

         if(pre.getInt("first",num) == 0){
           //加载引导界面

         } else{

           //加载程序主界面

       }

      待续。。。

  • 相关阅读:
    Kubernetes 集成研发笔记
    Rust 1.44.0 发布
    Rust 1.43.0 发布
    PAT 甲级 1108 Finding Average (20分)
    PAT 甲级 1107 Social Clusters (30分)(并查集)
    PAT 甲级 1106 Lowest Price in Supply Chain (25分) (bfs)
    PAT 甲级 1105 Spiral Matrix (25分)(螺旋矩阵,简单模拟)
    PAT 甲级 1104 Sum of Number Segments (20分)(有坑,int *int 可能会溢出)
    java 多线程 26 : 线程池
    OpenCV_Python —— (4)形态学操作
  • 原文地址:https://www.cnblogs.com/d-on/p/4056634.html
Copyright © 2011-2022 走看看