0

我正在尝试根据发生的错误类型显示错误消息。为此,我有一个公共变量“errorMessage”,它附加到检查器中的 UI 文本。我可以在 start 函数中更改文本值,但似乎无法在 GetErrorMessage 函数中更改该值。以下是代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using Firebase.Auth;
using System;


public class LoginController : MonoBehaviour
{
    public InputField email, password; 
    public Screen nextScreen;
    public Text errorMessage;

    void Start()
    {
        password.inputType = InputField.InputType.Password;
        errorMessage.text = "This is error"; //this works
    }


    public void Login()
    {
        //login code which calls GetErrorMessage(error)
    }
    void GetErrorMessage(string error)
    {
        print("error function called");
        print(error);
        print(errorMessage.text); //works till here
        errorMessage.text = error; //doesn't work from here. Seems like it stops functioning.
        print(error); //and this never gets printed
    }
}

检查员:错误消息附加到我的 UI 文本

4

1 回答 1

1

您的函数一直运行到最后,除非您收到 NullReferenceException(这是您可以从该方法获得的唯一可能的异常)。

我相信正在发生的事情是,在您的控制台面板中,您勾选了“折叠”选项,因此消息会堆叠。

在此处输入图像描述

如果要确保它运行,请在 GetErrorMessage() 的最后一行打印“错误函数退出”。

于 2020-03-02T14:33:19.277 回答