• 关于unity中数据的简单存储和EditorPrefs.DeleteAll()的谨慎使用


    Unity中有PlayerPrefs和EditorPrefs两种,图片里列举了

    这两种方式的存储和获取方法,其中EditorPrefs比PlayerPrefs多了一个bool的存储和获取。EditorPrefs是在编辑器模式下的存储功能,PlayerPrefs是游戏运行时的代码里定义的存储功能,比如游戏结束显示最高分,就可以调用PlayerPrefs的方法来存储这个分数,以便再一次进入游戏时调用PlayerPrefs获取键值的方法时能得到上一次的最高分。

    接下来说一下PlayerPrefs.DeleteKey()和EditorPrefs.DeleteKey(),这两个就是删除某个key和对应的value。

    最后就是PlayerPrefs.DeleteAll()和EditorPrefs.DeleteAll()的区别和共同点,首先共同点就是删除所有key和所有value。接着区别就是PlayerPrefs删除的是代码里主动调用方法存储的所有key和value,而EditorPrefs删除的除了编辑器模式下的测试用的所有key和value,可能还包括unity编辑器自身存储的key和value,其中就包括下面图中的数据,原本No local projects 处是之前打开

    过的其他项目的名字和路径以及使用的unity版本,但是在编辑器模式下用了EditorPrefs.DeleteAll()这个方法后,这边就消失了,其他版本的unity也都消失了,会造成一些不必要的麻烦,而且还把编辑器菜单栏Edit -> Preference -> General -> Auto Refresh 的勾取消了,这是unity脚本有变化时会自动编译的选项,所以在编辑器模式下得谨慎使用EditorPrefs.DeleteAll()这个方法。

  • 相关阅读:
    c语言-关键字/标识符
    初识c语言
    MinGW-w64离线安装
    SpringBoot配置文件详解
    JS如何判断是不是为{},以下个人认为是比较好的方法
    IDEA下的SpringBoot工程的如何打包成war包
    cesium之城市行政划分
    cesium之平面裁切
    SSM框架的maven工程使用事务流程
    创建一个最简单的Cesium程序步骤
  • 原文地址:https://www.cnblogs.com/cyct/p/11323922.html
Copyright © 2020-2023  润新知