Консоль говорит, что мое изображение было уничтожено и пытается получить к нему доступ, но изображение не удалено - PullRequest
0 голосов
/ 21 апреля 2019

Я написал простой скрипт для включения и выключения изображения при включении и отключении.Он хорошо работает во время воспроизведения и ничего плохого, но консоль постоянно сообщает мне об этой ошибке:

MissingReferenceException: объект типа 'Image' был уничтожен, но> вы все еще пытаетесь получить к нему доступ.Ваш скрипт должен либо проверять, является ли он нулевым, либо вы не должны уничтожать объект.checkifdone.OnDisable () (at Assets / checkifdone.cs: 38)

Код, который я написал, выглядит так:

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

public class checkifdone : MonoBehaviour
{

public AudioSource checkwin;
public GameObject wincheck;
public Image neontastic;
public Image neontasticd;
public AudioSource ambient;
public AudioSource music;
public AudioSource deathamb;
public GameObject blackout;
// Start is called before the first frame update
void Start()
{
    wincheck.gameObject.SetActive(false);
    neontastic.enabled = false;
    neontasticd.enabled = false;


}

private void OnEnable()
{
    checkwin.Play();
    neontastic.enabled = true;
    neontasticd.enabled = true;
}

private void OnDisable()
{
    checkwin.Stop();

    neontastic.enabled = false;
    neontasticd.enabled = false;
}
}

Изображение, на которое он ссылается, не уничтожается, иэто все еще дает мне ошибку.Я попытался удалить neontastic = false, чтобы посмотреть, исправит ли это.Ошибка исчезла, но изображение больше не исчезает при необходимости.Я снова включаю код, проблема сохраняется в консоли.

Имейте в виду, что, несмотря на ошибку, игра работает должным образом, но она вызывает ошибки.

Как мне это исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...