Bonsoir
j'ai un UI Panel sans enfant, je veut ajouter un UI Text au panel comme enfant mais avec du code.
qui a une idée a comment faire ça?
Bonsoir
j'ai un UI Panel sans enfant, je veut ajouter un UI Text au panel comme enfant mais avec du code.
qui a une idée a comment faire ça?
Bonjour Chemsoun,
Comme conseillé dans la doc, le mieux est de créer un prefab de ton uText, et ensuite dans ton code, il te suffit d'instancier au moment souhaité en lui assignant en parent ton UIPanel.
j'ai pas bien expliqué mon souci, j'ai plusieurs gameobjects, je veut que avec le clic sur chaque gameobject son nom s'ajoute au panel comme enfant de telle sorte qu'ils forment une liste
Bonjour,
Ben cela rejoint un peu ce que je disais dans le principe. Tu gère la sélection de tes gameobject (soit avec un script/gameobject avec des OnMouseDown(), ou alors par un script qui en passe par le couple ScreenPointToRay/RayCast), et en suite tu instancie un prefab uText, que tu parentes à ton UIPanel.
y'a t'il une solution que je peut suivre sans avoir utiliser l'instantiation ?
Bonjour Chemsoun,
Si bien sûr, même si cela va forcement te compliquer la vie hein... Donc par du code from scratch... (pas le plus aisé).
Donc tu peux écrire quelque chose comme cela pour ajouter un utexte à un panel GUI:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 GameObject panel = GameObject.Find ("thePanel"); // thePanel étant le Panel parent de ton texte GameObject myText = new GameObject("monText"); myText.transform.SetParent(panel.transform, false); Text uText = myText.AddComponent<Text>(); uText.color = new Color32(0, 0, 0, 255); uText.alignment = TextAnchor.MiddleCenter; uText.font = Resources.GetBuiltinResource(typeof(Font), "Arial.ttf") as Font; uText.text = "exemple de texte";
merci Greg Latiner je vait y essayer
Bonjour Chemsoun,
Tu sais, regarder la doc cela a du bon hein. Tu vois bien que dans le uText créé, tu as un composant qui s'appelle 'RectTransform', et que comme pour tout transform, tu peux modifier les valeur de positions, genre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part myText.GetComponent<RectTransform>().localPosition = new Vector2(10,50);
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager