【发布时间】:2018-11-24 04:49:57
【问题描述】:
我正在构建一些软件,每次加载某个屏幕时都会显示一个文本。我正在尝试删除所有以前的文本,以便每次加载视图时都可以加载新文本。但是由于某种原因,我似乎无法销毁保存文本的游戏对象,并最终复制了我已经拥有的文本。
private void SetPages(List<string> strings)
{
Clear();
foreach (string page in strings)
AddPage(page);
}
private void AddPage(string text)
{
Text page = instantiator.InstantiatePrefabForComponent<Text>(textPrefab);
page.GetComponent<Text>().text = text;
page.transform.SetParent(root, false);
texts.Add(page);
}
private void Clear()
{
if(texts != null)
{
foreach (Text text in texts)
{
oldTexts.Add(text);
}
for (int i = 0; i < oldTexts.Count; i++)
{
Destroy(oldTexts[i].gameObject);
}
oldTexts.Clear();
texts.Clear();
}
}
【问题讨论】:
标签: string unity3d gameobject