如何区分用户交互设置的值与Spark输入组件的绑定

时间:2013-06-18 08:44:25

标签: actionscript-3 flex actionscript flex4 flex-spark

如何确定值集是来自用户与输入组件的交互还是来自绑定?

示例:

<s:NumericStepper xmlns=...
                  value="{SomeDataManager.foo}">
<fx:Script>
    override public function set value(newValue:Number):void {
        if (setByUser) {
            super.value = newValue;
        } else {
            // ...
        }
    }
</fx:Script>
</s:NumericStepper>

如果重要,请使用Flex 4.1。

1 个答案:

答案 0 :(得分:1)

听取change事件。它会解决你的问题。

<s:HGroup>
        <s:NumericStepper change="trace('ns change')" value="{ns2.value}" minimum="{ns2.minimum}" maximum="{ns2.maximum}"/>
        <s:NumericStepper minimum="0" maximum="1000" id="ns2" />
    </s:HGroup>

当用户交互更改输入组件的值时,会触发change事件。如果代码的某些部分正在更改该组件的值,则change事件不会被触发。