0

我已将我的数据提供者设置Bindable为:

        [Bindable]
        public var dataProvider:ArrayCollection;

        public function init():void{

            dataProvider = new ArrayCollection(
                [{label:"x"},
                    {label:"y"},
                    {label:"z"}]);

然后在调用按钮的 CLick 事件的函数中,我想在特定索引处获取项目

private function getmyItem(event:Event):void {
                trace(dataProvider.length);
                trace(dataProvider.getItemAt(1));
                                 //OR
trace(dataProvider.getItemAt(myList.selectedIndex));
}

但我正在[Object Object]追踪。有人可以告诉我我的代码有什么问题吗?

谢谢

4

3 回答 3

2

你的代码不完整

trace(dataProvider.getItemAt(myList.selectedIndex).label);
trace("your_tilelist_name".dataProvider.getItemAt(myList.selectedIndex).label);

private function getmyItem(event:Event):void {
            trace("your_tilelist_name".dataProvider.length);
            trace("your_tilelist_name".dataProvider.getItemAt(1).label);
                            //OR
trace("your_tilelist_name".dataProvider.getItemAt(myList.selectedIndex).label);

}
于 2012-08-14T11:55:23.200 回答
1
{label:"x"},
{label:"y"},
{label:"z"}

这些是Objects使用{}语法创建的。

var obj:Object = {some:"value"};
trace(obj); // [object Object]
于 2011-06-22T07:21:39.363 回答
1

您想进入什么并不明显,trace但我可以猜测以下修复可以解决您的问题:

private function getmyItem(event:Event):void {
                trace(dataProvider.length);
                trace(dataProvider.getItemAt(1).label);
                                 //OR
trace(dataProvider.getItemAt(myList.selectedIndex).label);
}
于 2011-06-22T07:21:40.187 回答