无法将 Class 个对象从一个场景发送到另一个场景
Cannot Send Class Object From One Scene to Another
我正在开发 Unity 游戏。
我在游戏中有一个从数据库中获取用户信息的登录场景。
获取用户信息后,一个名为 RegisteredUser 的模型 class 用于保存用户凭据。
我需要将创建的 RegisteredUser class 对象发送到下一个场景。但是我不能直接发送。当我尝试它时,我得到 NullExceptionError 并且对象丢失了。我该如何解决?
这是返回用户凭证的回调函数:
public void userInfo (RegisteredUser newUser)
{
loggedinUser.FirstName = newUser.FirstName;
loggedinUser.LastName = newUser.LastName;
loggedinUser.Email = newUser.Email;
loggedinUser.Gender = newUser.Gender;
}
这是我要获取用户姓名以在文本字段上打印的部分:
void Start()
{
// string userName = currentUser.FirstName + currentUser.LastName;
welcomeText = GameObject.Find("Canvas/SidebarPanel/WelcomeText").GetComponent<Text>();
}
将您的对象存储在标记为 DontDestroyOnLoad 的 MonoBehaviour 脚本的 field/property 中。
此对象及其数据将持续存在。
public class PersistentDataContainer : MonoBehaviour
{
public RegisteredUser UserInfo;
private void Awake()
{
DontDestroyOnLoad(gameObject);
}
}
我正在开发 Unity 游戏。 我在游戏中有一个从数据库中获取用户信息的登录场景。 获取用户信息后,一个名为 RegisteredUser 的模型 class 用于保存用户凭据。 我需要将创建的 RegisteredUser class 对象发送到下一个场景。但是我不能直接发送。当我尝试它时,我得到 NullExceptionError 并且对象丢失了。我该如何解决? 这是返回用户凭证的回调函数:
public void userInfo (RegisteredUser newUser)
{
loggedinUser.FirstName = newUser.FirstName;
loggedinUser.LastName = newUser.LastName;
loggedinUser.Email = newUser.Email;
loggedinUser.Gender = newUser.Gender;
}
这是我要获取用户姓名以在文本字段上打印的部分:
void Start()
{
// string userName = currentUser.FirstName + currentUser.LastName;
welcomeText = GameObject.Find("Canvas/SidebarPanel/WelcomeText").GetComponent<Text>();
}
将您的对象存储在标记为 DontDestroyOnLoad 的 MonoBehaviour 脚本的 field/property 中。
此对象及其数据将持续存在。
public class PersistentDataContainer : MonoBehaviour
{
public RegisteredUser UserInfo;
private void Awake()
{
DontDestroyOnLoad(gameObject);
}
}