У меня есть Canvas (режим World Space Render) с компонентом Text и Button, отображаемым в трехмерном пространстве (это приложение для виртуальной реальности). Холст создается во время выполнения с использованием префаба. Я получаю ссылку на объект Text, используя:
_codeTextLabel = canvasPrefab.transform.Find("CodeTextLabel").gameObject.GetComponent<Text>();
Я хочу обновить текст во время выполнения, используя:
void Update()
{
_codeTextLabel.text = _codeText;
}
, где _codeText
- это просто переменная, которую я обновляюна основе конкретных событий. Проблема в том, что текст обновляется только в первый раз, но если я пытаюсь изменить переменную, ничего не происходит. Я перепробовал несколько комбинаций, а также метод _codeTextLabel.SetAllDirty()
, но он не работает.
Единственный способ обновить текст - восстановить экземпляр префаба.