Unity PlayerPrefs使用出现的一个注意点

 void Awake_Test()
 {
     // 假设 key 和 value 是有效的键和值  
     string key = "myKey";
     string value = "myValue";

     // 将值保存到 PlayerPrefs  
     PlayerPrefs.SetString(key, value);
     Debug.LogWarning("存储Key=" + key + " 内容=" + value);

     // 获取保存的值并打印  
     value = "";  // 设置为空字符串以存储从 PlayerPrefs 中获取的值  
     PlayerPrefs.GetString(key, value);
     Debug.LogWarning("读取Key=" + key + " 内容=" + value);
     value = PlayerPrefs.GetString(key);
     Debug.LogWarning("读取Key=" + key + " 内容=" + value);
 }

结果是:

PlayerPrefs.GetString(key, value);未能获取值

value = PlayerPrefs.GetString(key);能够获取值

后来查询才知道PlayerPrefs.GetString(key, value); 后面的Value是当没有找游戏数据时,该方法就给这个键值赋值一个初始默认值。[1]

所以程序正确的使用方法是:

value = PlayerPrefs.GetString(key, defaultValue)

[1]舔喵 Unity Playerprefs的方法

Unity Playerprefs的方法_playerprefs.getstring_舔喵的博客-CSDN博客

2023-10-30/2021-05-28

你可能感兴趣的:(Unity,unity)