我一直在寻找像 scaleGridLeft 和 scaleGridRight 这样的属性实际上是什么意思,但在任何地方都找不到连贯的解释。一种描述说,如果你有一张图像,你要做的是在该图像中定义一个不受缩放影响的矩形。下面的代码用于垂直滚动条拇指的自定义皮肤。我已将“右”设置为 -1,因为否则拇指放在轨道上时会在其右侧留下太大的间隙。
如果 scrollThumb.png 是 10x331 并且轨道是 16x521,我如何使拇指正确地位于轨道中心,并根据需要进行缩放?
<?xml version="1.0" encoding="utf-8"?>
<!--- The default skin class for the Spark Button component.
@see spark.components.Button
@langversion 3.0
@playerversion Flash 10
@playerversion AIR 1.5
@productversion Flex 4
-->
<fx:Metadata>
<![CDATA[
/**
* @copy spark.skins.spark.ApplicationSkin#hostComponent
*/
[HostComponent("spark.components.Button")]
]]>
</fx:Metadata>
<!-- states -->
<s:states>
<s:State name="up" />
<s:State name="over" />
<s:State name="down" />
<s:State name="disabled" />
</s:states>
<s:BitmapImage source="@Embed('assets/scrollThumb.png', scaleGridLeft='2', scaleGridTop='20', scaleGridRight='11', scaleGridBottom='50')"
left="0" top="0" bottom="0" right="-1" />
</s:SparkButtonSkin>