奇怪错误时尝试使用removeChild之/的addChild
问题描述:
我有我的一些haXe的下面一行代码:奇怪错误时尝试使用removeChild之/的addChild
removeChild(_screens[Helpers.indexOf(_screenNames, _activeScreen)]);
(_screens是一个列表,GameScreen从雪碧延伸_activeScreen是一个字符串,_screenNames是一个列表,Helpers.indexOf确实明显)
但是,我得到的错误:
List<com.haxelib.GameScreen> should be Array<Unknown<0>>
在_screens
一部分。我无法理解这个错误;这是什么意思?
答
列表确实实现了ArrayAccess,因此不能与方括号语法一起使用。您应该使用_screens.get(index)
。你也不会说如果你的Helpers.indexOf接受一个Array,一个List或一个Iterable作为参数......如果它需要一个数组,它不能与List一起使用;最好的方法是使用Iterable,因此它可以同时使用数组或列表。
Hlpers.IndexOf需要一个列表。我还假定你的意思是List *不*实现ArrayAccess?谢谢您的帮助!编辑:检查可用的方法,列表(我使用通用版本)上没有'get'方法。 –
RCIX
2010-09-09 00:18:02
在任何情况下,我实现了'itemAtIndex'函数,这就是我所需要的。 – RCIX 2010-09-09 00:40:46