首页 > 解决方案 > 如何通过不同的场景传递字符串变量?统一 C#

问题描述

我有 2 个脚本。一方面,您有一个可以登录的功能。它需要一个用户名,我希望该用户名出现在位于主菜单场景中的 TMP 文本上。

    public string Username;

它是一个公共字符串。其他脚本:

    public TextMeshProUGUI playerName;

这就是应该显示玩家用户名的 TMP 文本。

我知道如何在脚本之间传递变量,但我不知道如何在整个场景中传递它们。

有点着急抱歉。

标签: c#unity3d

解决方案


您可以尝试使用PlayerPrefs

登录后在 PlayerPrefs 上设置玩家名称:

PlayerPrefs.SetString("Name", m_PlayerName);

稍后从 PlayerPrefs 将其加载到另一个场景中:

m_PlayerName = PlayerPrefs.GetString("Name", "No Name");

推荐阅读