0

我有一个显示地图的 Flex 应用程序。我还可以在整个地图中放大或缩小。目前我正在从 xml 文件访问缩放值,

代码如下。

用于访问 XML 文件的代码。

private var xmlProperties:XML;
private function init():void {

    sendRequest("properties.xml", propertyFileLoaded);

}



private function propertyFileLoaded(evt:ResultEvent):void {

    showBusy(false);

    xmlProperties = XML(evt.result);

        .......

        .......
}

用于访问缩放级别的 Mxml 部分。

<esri:LOD level="8" resolution="{xmlProperties..layer.(@name == 'LAYER_8').@x}" scale="{xmlProperties..layer.(@name == 'LAYER_8').@y}" />
                        <esri:LOD level="9" resolution="{xmlProperties..layer.(@name == 'LAYER_9').@x}" scale="{xmlProperties..layer.(@name == 'LAYER_9').@y}" />
                        <esri:LOD level="10" resolution="{xmlProperties..layer.(@name == 'LAYER_10').@x}" scale="{xmlProperties..layer.(@name == 'LAYER_10').@y}" />
                        <esri:LOD level="11" resolution="{xmlProperties..layer.(@name == 'LAYER_11').@x}" scale="{xmlProperties..layer.(@name == 'LAYER_11').@y}" />
                        <esri:LOD level="12" resolution="{xmlProperties..layer.(@name == 'LAYER_12').@x}" scale="{xmlProperties..layer.(@name == 'LAYER_12').@y}" />
                        <esri:LOD level="13" resolution="{xmlProperties..layer.(@name == 'LAYER_13').@x}" scale="{xmlProperties..layer.(@name == 'LAYER_13').@y}" />

XML 数据。

.....
.....
<layer name="LEVEL_10" x="152.87405657041106" y="577790.554289" />
<layer name="LEVEL_11" x="76.43702828507324" y="288895.277144" />
.....
.....

以前我已经硬编码像这样的缩放级别值,

<esri:LOD level="7" resolution="453.4534" scale="3.45346345" />

但是当我尝试从 XML 访问值时,它显示错误,

Argument Error:Error #2004: One of the parameter is invalid.

如何解决这个问题。

任何帮助表示赞赏。

4

0 回答 0