• .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{

           //加载程序主界面

       }

      待续。。。

  • 相关阅读:
    asp.net——Ajax与ashx异步请求的简单案例
    【转载】ADO.NET与ORM的比较(2):NHibernate实现CRUD
    【转载】ADO.NET与ROM的比较(1):ADO.NET实现CRUD
    STM32 IO口重映射
    keil集成开发环境下,编译stm32f103的工程,bug总结
    [转载]轻松玩转LCD12864-基于AVR单片机的LCD12864串行显示
    头文件 INTRINS.H 的用法
    JAVA
    Sublime 使用技巧
    STM32 空操作
  • 原文地址:https://www.cnblogs.com/d-on/p/4056634.html
Copyright © 2020-2023  润新知