Accueil Forums J’ai besoin d’aide Unity3D Un autre petit problème

Ce sujet a 1 réponse, 2 participants et a été mis à jour par  Zhass, il y a 1 mois et 3 semaines.

2 sujets de 1 à 2 (sur un total de 2)
  • Auteur
    Messages
  • #1282

    Eddie
    Participant

    Impossible de modifier mon autre forum donc dsl mais je reposte un sujet.
    Voici mon soucis.

    Quand je clique sur le bouton suivant, je reset les textes et définis aléatoirement (via un tableau) deux valeurs à deux variables Text appelées LAuteur et LeTitre via :
    – LAuteur.text = Col[0];
    – LeTitre.text = Col[1];
    Puis plus loin dans le code, je détecte le clique sur les textes (qui sont en réalité des boutons) et je change le texte pour afficher les valeurs qui ont été définis plus haut via :
    – TextAuteur = GameObject.Find(“TextAuteur”).GetComponent<Text>();
    TextAuteur.text = LAuteur.text;
    – TextTitre = GameObject.Find(“TextTitre”).GetComponent<Text>();
    TextTitre.text = LeTitre.text;

    Je vous met le code pour que vous puissiez comprendre :

    <pre class=”lang:c# decode:true ” title=”Le Code”>
    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.SceneManagement;
    using UnityEngine.Collections;
    using UnityEngine.UI;

    public class LeaveBtn : MonoBehaviour {

    private Text TextAuteur;
    private Text TextTitre;
    public Text LeTitre;
    public Text LAuteur;
    public Sprite ImagePause;
    public Sprite ImagePlay;
    public Button PlayPauseBtn;
    public int Nr;

    string[] BlindTest = new string[10];

    // Use this for initialization
    void Start()
    {
    BlindTest[0] = “Auteur 1, Titre 1”;
    BlindTest[1] = “Auteur 2, Titre 2”;
    BlindTest[2] = “Auteur 3, Titre 3”;
    BlindTest[3] = “Auteur 4, Titre 4”;
    BlindTest[4] = “Auteur 5, Titre 5”;
    BlindTest[5] = “Auteur 6, Titre 6”;
    BlindTest[6] = “Auteur 7, Titre 7”;
    BlindTest[7] = “Auteur 8, Titre 8”;
    BlindTest[8] = “Auteur 9, Titre 9”;
    BlindTest[9] = “Auteur 10, Titre 10”;
    }

    // Update is called once per frame
    void Update()
    {

    }

    public void Suivant()
    {
    Nr = Random.Range(0, BlindTest.Length);
    string[] Col = BlindTest[Nr].Split(‘,’);
    TextTitre = GameObject.Find(“TextTitre”).GetComponent<Text>();
    TextAuteur.text = “Voir l’auteur”;
    LAuteur.text = Col[0];
    TextTitre = GameObject.Find(“TextTitre”).GetComponent<Text>();
    TextTitre.text = “Voir le titre”;
    LeTitre.text = Col[1];
    }

    public void AuteurBtn()
    {
    TextAuteur = GameObject.Find(“TextAuteur”).GetComponent<Text>();
    TextAuteur.text = LAuteur.text;
    }

    public void TitreBtn()
    {
    TextTitre = GameObject.Find(“TextTitre”).GetComponent<Text>();
    TextTitre.text = LeTitre.text;
    }

    Je lance le test mais cela ne fonctionne pas, quand je clique sur les textes, rien ne change.

    #1357

    Zhass
    Participant

    Salut,

    Donc si j’ai bien compris, tu souhaites que lorsque l’on appuis sur un des boutons, son texte change aléatoirement parmi tes tableaux de Strings ?

    Mais comme tu effectues tes actions via des fonctions que tu as crées toi même, est ce que tu les as bien mis dans le champs “Onlclick” dans l’inspector ?
    Pour que le bouton sache qu’il doit bien exécuter tes fonctions quand on clique dessus 🙂

2 sujets de 1 à 2 (sur un total de 2)

Vous devez être connecté pour répondre à ce sujet.