我正在制作益智文字游戏,并且很难实现无限模式
这是一张供您参考的图片
用蓝色包围的代码就是这个
textComp.text = "";
rowsToReadFrom[0] = indexx;
textArray = myTextAsset.text.Split('\n').ToList();
textComp.text += textArray[rowsToReadFrom[0]] + "\n";
indexx += 1;
被红色包围的那个是我想要的那个,代码就是这个
char[] chars = words[index].GetString().ToCharArray();
foreach (char c in chars)
{
testObject clone = Instantiate(prefab.gameObject).GetComponent<testObject>();
clone.transform.SetParent(container);
charObjects.Add(clone.Init(c));
}
有人可以指出我应该怎么做。
让我们分解子问题中的问题并解决:
对concatenate
string
使用+
运算符,它连接string
(s) - 第一个解决
把它放到按钮中得到那个length
的string
,现在动态生成Button
(s)与string
的长度相同并一个接一个地定位它们。
[使用str [n]在第n个位置获取字符,从0开始索引。]
设置Button
的文本。 - 第二个问题解决了。
This将帮助创建Button
。
使用text
更改Button
的GetComponent<Button>().text
。
要将单个字符转换为string
,请像这样创建一个string
string tem=Character.toString(your_character)
(包含单个空格的字符串),瞧
现在用它。
虽然答案也是正确的,但我有自己的答案,而且在这里
string temp = textArray[rowsToReadFrom[0]];
temp = System.Text.RegularExpressions.Regex.Replace(temp, @"\s", "");
char[] chArr = temp.ToCharArray();
然后把它放在这样的按钮上
foreach (char c in chArr)
{
testObject clone = Instantiate(prefab.gameObject).GetComponent<testObject>();
clone.transform.SetParent(container);
charObjects.Add(clone.Init(c));
//Debug.Log(c);
}