奇怪错误时尝试使用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,因此它可以同时使用数组或列表。

+0

Hlpers.IndexOf需要一个列表。我还假定你的意思是List *不*实现ArrayAccess?谢谢您的帮助!编辑:检查可用的方法,列表(我使用通用版本)上没有'get'方法。 – RCIX 2010-09-09 00:18:02

+0

在任何情况下,我实现了'itemAtIndex'函数,这就是我所需要的。 – RCIX 2010-09-09 00:40:46