美文网首页
Android共享首选项

Android共享首选项

作者: 蜗牛是不是牛 | 来源:发表于2022-11-06 22:22 被阅读0次

什么是共享首选项?

它是数据持久性的概念之一,就像数据库一样,SharedPreference也用于存储数据,但不是存储大数据。

SharedPreferences适用于不同的情况,比如我们想存储用户的设置。例如;用户已选择暗主题,因此当用户下次打开应用程序时,它应该向他们显示暗主题。

其他情况是,我们希望在应用程序的不同活动中使用该数据块。

在共享首选项中写入数据

// Storing data into SharedPreferences
SharedPreferences sharedPreferences = getSharedPreferences("MySharedPref",MODE_PRIVATE);

// Creating an Editor object to edit(write to the file)
SharedPreferences.Editor myEdit = sharedPreferences.edit();

// Storing the key and its value as the data fetched from edittext
myEdit.putString("name", name.getText().toString());
myEdit.putInt("age", Integer.parseInt(age.getText().toString()));

// Once the changes have been made,
// we need to commit to apply those changes made,
// otherwise, it will throw an error
myEdit.commit();

为了创建SharedPreference,使用了“getSharedReferences()”方法。此方法包含2个参数、SharedPreference的名称和要设置的模式。

共有3种模式:

模式_PUBLIC:使用此模式时,文件是公共的,可以被其他应用程序使用。

模式-私有:你的文件在这里处于私有模式,其他应用无法访问。

MODE_APPEND:当您想从共享首选项读取数据时使用它。

SharedPreferences.Editor myEdit = sharedPreferences.edit();

// Storing the key and its value as the data fetched from edittext
myEdit.putString("name", name.getText().toString());
myEdit.putInt("age", Integer.parseInt(age.getText().toString()));

因为我们要将数据添加到SP中,所以必须创建编辑器。您可以将数据放入编辑器,如上图所示。

输入所有数据后,必须提交SP。为了保存数据。

从共享首选项读取数据

// Retrieving the value using its keys the file name
// must be same in both saving and retrieving the data
SharedPreferences sh = getSharedPreferences("MySharedPref", MODE_APPEND);

// The value will be default as empty string because for
// the very first time when the app is opened, there is nothing to show
String s1 = sh.getString("name", "");
int a = sh.getInt("age", 0);

同样,在这里创建共享首选项。但是用了附加模式。因为我们想读取数据。

使用sh.getString、sh.getInt各自的方法来获取值。

这些方法中的第一个参数是我们在创建这些数据时提供的“键”,其他参数是默认值。如果SP无法检索具有该ID的数据,它将返回默认值。

相关文章

  • Android共享首选项

    什么是共享首选项? 它是数据持久性的概念之一,就像数据库一样,SharedPreference也用于存储数据,但不...

  • Android中数据存储介绍

    前言 Android提供了多种选项来保存永久性应用数据。用户可以选择的数据存储选项有:共享首选项、内部存储、外部存...

  • Android数据存储

    保存到共享首选项(sharedPreference): 这里说的是SharedPreference不是Prefer...

  • SharedPreferences的使用与封装

    SharedPreferences的介绍SharedPreferences:中文翻译为共享首选项,一个轻量级的存储...

  • 2021-11-18 DELPHIXE11 弹窗VMWA

    DELPHIXE11 弹窗VMWARE 警告的处理打开vmware--编辑--首选项----共享虚拟机--...

  • 8.31

    Android匿名共享(Ashmen)Android特有内存共享机制,实现了进程间的内存共享。基于ashmen设备...

  • Swift之数据管理(一)

    1、获取文件路径 目录文件管理 用户首选项(与Android的shared preferences类似) 属性列表

  • Android的SharedPreferences(首选项)保存

    使用共享首选项 如果您有想要保存的相对较小键值集合,您应使用 SharedPreferences API。Shar...

  • PreferenceFragment

    摘录笔记: 当我们在开发Android项目时一般都会用到首选项设置,在Android3.0之前我们都使用Prefe...

  • Android共享元素

    在这里记录一下android共享元素的方法,踩了满多坑的,其实蛮简单的,Android共享是从Android5.0...

网友评论

      本文标题:Android共享首选项

      本文链接:https://www.haomeiwen.com/subject/advitdtx.html