1.创建一个MyScaleBarSkin.as的类(该类继续ScaleBarSkin):
package com.commpent.skins
{
import com.esri.ags.skins.ScaleBarSkin;
public class MyScaleBarSkin extends ScaleBarSkin
{
public function MyScaleBarSkin()
{
super();
}
override protected function measure():void
{
var metric:String = hostComponent.textMetric;
var us:String = hostComponent.textUS;
if(metric)
{
if(metric.indexOf("km") > 0)
metric = metric.slice(0,metric.indexOf("km")) +"千米";
else if(metric.indexOf("m") > 0)
metric = metric.slice(0,metric.indexOf("m")) + "米";
}
if(us)
{
if(us.indexOf("mi") > 0)
us = us.slice(0,us.indexOf("mi")) + "英里";
if(us.indexOf("ft") > 0)
us = us.slice(0,us.indexOf("ft")) + "英尺";
}
hostComponent.textMetric =metric;
hostComponent.textUS = us;
super.measure();
}
}
}
2.然后在样式中定义:
<pre name="code" class="html">@namespace esri "http://www.esri.com/2008/ags";
esri|ScaleBar
{
right:NaN;
left:5;
bottom:22;
skinClass:ClassReference("com.commpent.skins.MyScaleBarSkin")
}
这样即可更改比例尺的单位