分配一个随机数组字符串到一个文本组件- Unity 4.6, uGUI

本文关键字:一个 Unity uGUI 字符串 数组 随机 分配 文本 组件 | 更新日期: 2023-09-27 18:02:02

我正在创建一个数组,其中包含我需要随机选择的描述(字符串)列表,然后将其分配给游戏对象中的文本组件。我怎么做呢?我已经创建了数组,但我不知道从哪里开始。有人能帮我一下吗?

public string[] animalDescriptions = 
{
    "Description 1",
    "Description 2",
    "Description 3",
    "Description 4",
    "Description 5",
};

void Start () 
{
    string myString = animalDescriptions[0];
    Debug.Log ("You just accessed the array and retrieved " + myString);
    foreach(string animalDescription in animalDescriptions)
    {
        Debug.Log(animalDescription);
    }
}

分配一个随机数组字符串到一个文本组件- Unity 4.6, uGUI

using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Test : MonoBehaviour 
{
public Text myText;
public string[] animalDescriptions = 
{
    "Description 1",
    "Description 2",
    "Description 3",
    "Description 4",
    "Description 5",
};
void Start()
{
    string myString = animalDescriptions [Random.Range (0, animalDescriptions.Length)];
    myText.text = myString;
}
}
string myString = animalDescriptions[new Random().Next(animalDescriptions.Length)];

你可能想把new Random()存储在其他地方,这样你就不会每次想要一个新的随机描述时都播种一个新的,但仅此而已。您可以在其他地方初始化您的Random,并简单地在Start中使用它的实例:

Random rand = new Random();
// ... other code in your class
void Start()
{
    string myString = animalDescriptions[rand.Next(animalDescriptions.Length)];
    // ... the rest of Start()
}