Я придумал собственное решение.
Вместо непосредственного изменения альфа-компонента TextMe sh -компонента, я добавляю CanvasGroup в Gameobject, который содержит мой-компонент TextMe sh. Затем я манипулирую альфа-значением CanvasGroup.
Чтобы использовать мой пример кода:
- На вашем холсте go: [RightClick]> UI> Text - TextMeshPro
- Прикрепите мой пример скрипта к этому игровому объекту. (При этом автоматически создается требуемая группа CanvasGroup)
- Нажмите Play (Ctrl + P)
После задержки в 2 секунды (из-за .setDelay (2f) текст должен исчезнуть).
Пример кода:
using UnityEngine;
using TMPro;
[RequireComponent(typeof(CanvasGroup))]
public class LeanTweenTextFade : MonoBehaviour
{
private void Start()
{
CanvasGroup canvasgroup = this.gameObject.GetComponent<CanvasGroup>();
TextMeshProUGUI infoTextTMPro = this.gameObject.GetComponent<TextMeshProUGUI>();
canvasgroup.alpha = 0f;
infoTextTMPro.text = "This Text should fade in.";
float duration = 1f;
LeanTween.alphaCanvas(canvasgroup, 1.0f, duration).setDelay(2f);
}
}