2010-09-08 42 views
0

我有我的一些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一部分。我無法理解這個錯誤;這是什麼意思?

回答

1

列表確實實現了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

相關問題