我有一个问题,为什么这不起作用?
我有一个包含数据的ArrayCollection;使用
得到的随机索引的痕迹ObjUtil.toString(arrc.getItemAt(index))
给了我
(Object)#0 label = "VALUE" value = 20然后我创建了一个对象:
var newObj:Object = new Object()
newObj.label = "VALUE"
newObj.value = 20
这一点给出了:
(Object)#0 label = "VALUE" value = 20
现在我做了:
arrc.getItemIndex(newObj)
它总是给我-1。
有谁知道我哪里出错了?
答案 0 :(得分:1)
只是澄清一下......你实际上并没有将该对象添加到集合中?您正在创建一个与集合中的对象相同的对象并使用它来获取索引?
newObj与arraycollection中的对象不同。它们只有相同的值。如果一个对象实际上是同一个对象(它不会向下钻取并比较成员变量),getItemIndex
方法只会“找到”一个对象。
答案 1 :(得分:0)
getItemIndex
正在搜索相同的项(实例),而不是搜索具有相等属性值的相同项目。