我有一个歌曲列表,如果我双击一个项目,它将播放该歌曲。我是这样做的。 aList是列表的实例名称。
aList.addEventListener(MouseEvent.DOUBLE_CLICK, changeSong);
function changeSong(e:MouseEvent) {
....
song = e.target.selectedItem.data;
....
}
我在(song = e.target.selectedItem.data;)部分有错误。好像我使用了错误的财产。
ReferenceError: Error #1069: Property selectedItem not found on fl.controls.listClasses.CellRenderer and there is no default value.
at playlist_fla::MainTimeline/changeSong()
有谁知道如何正确获取项目的数据。因为我觉得我的语法错了。
提前致谢。
答案 0 :(得分:0)
您将哪些内容指定为List组件的dataProvider?
e.target.data
是一个具有其他属性的对象。
如果您不确定数据对象的属性,可以通过以下方式迭代:
for (var property:String in data)
{
trace("data." + property + " = " + data[property]);
}
如果它是您尝试分配给歌曲变量的标准itemRenderer的标签,那么您可能会成功:
song = e.target.listData.label;