我的 XML:
<destinations>
<destination>
<fav>1</fav>
<cheapest>140</cheapest>
</destination>
<destination>
<fav>0</fav>
<cheapest>150</cheapest>
</destination>
</destinations>
我正在为我的 spark List 组件创建 XMLListCollection。
var dataprovider:XMLListCollection = new XMLListCollection(xml.destination);
我正在尝试使用 fav 和最便宜的元素对这个 XMLListCollection 进行排序。
var sort:Sort = new Sort();
sort.fields = [new SortField("fav" , true , true)];
sort.fields.push(new SortField("cheapest" , false , true));
dataprovider.sort = sort;
dataprovider.refresh();
一切正常,直到我更新 fav 的值:
xml.destination.(id == String(destId))[0].fav = 0;
更新后 XML 结构看起来完全一样,但我的 itemrenderer 对象抛出错误:
override public function set data( value:Object ) : void {
dest_name.text = value.text;
}
错误说明该值为空。首先 value 怎么可能是 null 呢?当我从排序字段中删除 fav 或更新最便宜的元素时,我没有收到任何错误。
有人知道这个异常吗?