C# 获取脚本中的动画师列表

C# 获取脚本中的动画师列表,c#,animation,unity3d,unity5,C#,Animation,Unity3d,Unity5,我在世界空间中有一个UI菜单,摄像头在代表菜单部分的画布上来回移动 至于按钮,我为每个按钮制作了一些动画,使用单独的动画师,因此我单击单个播放器,例如,这个画布中的按钮应该使用动画替换为画布之外的其他按钮,反之亦然,当我回击时 问题是我想在UIGameObject中使用List UIAnimators来保存场景中的所有脚本。问题是,当我将脚本设置为按钮onClick时,Unity似乎无法接收列表。它根本不显示带有列表的方法。有办法绕着它走吗。因此,我可以在同一个脚本中触发多个控制器,因为我需要使

我在世界空间中有一个UI菜单,摄像头在代表菜单部分的画布上来回移动

至于按钮,我为每个按钮制作了一些动画,使用单独的动画师,因此我单击单个播放器,例如,这个画布中的按钮应该使用动画替换为画布之外的其他按钮,反之亦然,当我回击时

问题是我想在UIGameObject中使用List UIAnimators来保存场景中的所有脚本。问题是,当我将脚本设置为按钮onClick时,Unity似乎无法接收列表。它根本不显示带有列表的方法。有办法绕着它走吗。因此,我可以在同一个脚本中触发多个控制器,因为我需要使用每个按钮的控制器替换画布中的多个按钮。只是寻找一些提示,不需要编码,或者可能有一些参考或教程。我非常感谢你的帮助


提前谢谢

我不完全确定我是否在遵循,但如果我理解正确,那么您希望拥有不同UI元素的集合,并使用按钮中的OnClick事件一次激活多个元素的相应动画

不确定这是否是最佳解决方案,但您可以在父游戏对象上创建一个数组,使用其动画制作者的所有按钮,然后使用OnClick事件调用一个公共函数,为相应索引播放动画

public void MyFunction(int index)
{
  myUIElements[index].GetComponent<Animator>().Play();
}
然后,只需向该函数添加多个调用,其中包含单击该按钮时要设置动画的所有元素的索引,如下所示: