我已将我的数据提供者设置为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]
。有人可以告诉我我的代码有什么问题吗?
由于
答案 0 :(得分: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);
}
答案 1 :(得分:1)
{label:"x"},
{label:"y"},
{label:"z"}
这些是使用Objects
语法创建的{}
。
var obj:Object = {some:"value"};
trace(obj); // [object Object]
答案 2 :(得分:1)
您想要在trace
中获得什么并不明显,但我猜可以通过以下修复解决您的问题:
private function getmyItem(event:Event):void {
trace(dataProvider.length);
trace(dataProvider.getItemAt(1).label);
//OR
trace(dataProvider.getItemAt(myList.selectedIndex).label);
}