有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (4) 个答案

  1. # 1 楼答案

    SharedReferenceAPI用于保存键值对。它们存储在文件中,根据您实例化SharedReference对象的模式,它们是私有的或公共的。它们用于存储一小组键值对。这里的键是String类型,值可以是任何基元类型

    首选项管理器是首选项API的一部分。首选项API允许您定义完整的设置UI。此设置UI是一个XML布局。您可以使用首选项管理器来管理此首选项对象的树。它使用SharedReference API存储用户使用您创建的图形布局可能更改的各种设置

    引用-"Android Docs Training"

  2. # 2 楼答案

    正如Artoo Detoo所解释的。。。SharedReferences有点像web开发中的会话。您可以使用它们将值从一个活动传递到另一个活动,除非另有更改,否则在应用程序正在使用时,它一直保持这种状态

    它还用于用户值(在用户登录或注册后)。这就是我能谈论的内容

  3. # 3 楼答案

    从Android开发者网站:

    PreferenceManager:

    Used to help create Preference hierarchies from activities or XML.

    SharedPreferences:

    Interface for accessing and modifying preference data returned by getSharedPreferences(String, int). For any particular set of preferences, there is a single instance of this class that all clients share.

    简单地说,PreferenceManager通常在您想要创建一个PreferenceActivity或使用默认值从应用程序中的.xml文件加载一些首选项时使用,并保存它自己对SharedPreferences的引用

    SharedPreferences是处理组成首选项的键/值对的存储和检索的地方。因此,您可以添加带有键的变量,以便稍后检索数据。这将提供给PreferenceManager,它可以处理添加默认值和设置默认SharedPreferences

    您可以在整个应用程序中使用SharedPreferences,而无需使用PreferenceManager,但严格来说,情况并非如此

    进一步阅读:

  4. # 4 楼答案

    首选项是一种用于存储和检索配对的Android轻量级机制 基本数据类型(也称为映射和关联数组)

    在表单的每个条目中,键是字符串,值必须是基本数据类型

    当我们需要它们时:

    首选项通常用于保存状态信息和共享数据 在应用程序的几个活动中

    共享首选项是android中的存储,您可以使用它来存储与功能、用户自定义或其配置文件相关的一些基本内容

    假设您希望在应用程序中保存用户名以备将来使用。你们不能把这样一个小东西保存在数据库中,所以你们最好把它保存在你们的首选项中。首选项就像一个文件,您可以在应用程序生命周期的任何时候以键值对的方式从中检索值

    再举一个例子,如果你使用whatsapp,我们有一个壁纸选项。当您打开whatsapp时,应用程序如何知道哪个图像用作墙纸。此信息存储在首选项中。无论何时清除任何应用程序的数据,首选项都会被删除

    如何使用这些首选项:

    final int mode = Activity.MODE_PRIVATE; 
    final String MYPREFS = "MyPreferences_001"; 
    
    // create a reference to the shared preferences object 
    SharedPreferences mySharedPreferences; 
    
    // obtain an editor to add data to my SharedPreferences object 
    SharedPreferences.Editor myEditor;
    
    mySharedPreferences = getSharedPreferences(MYPREFS, 0); 
    
    // using this instance you can get any value saved.
     mySharedPreferences.getInt("backColor",Color.BLACK); // default value is BLACK set here
    

    编辑共享首选项:

    myEditor = mySharedPreferences.edit(); 
    //edit and commit
    myEditor.putString("backColor", Color.RED); 
    myEditor.commit() //very imp.