【发布时间】:2016-09-13 22:17:37
【问题描述】:
我有一个标注,其内容会根据某些用户交互而调整大小。皮肤有动画,之后标注不再正确定位,需要重新定位。
在调整标注内容大小后,有什么方法可以使标注失效?
【问题讨论】:
标签: apache-flex flex4
我有一个标注,其内容会根据某些用户交互而调整大小。皮肤有动画,之后标注不再正确定位,需要重新定位。
在调整标注内容大小后,有什么方法可以使标注失效?
【问题讨论】:
标签: apache-flex flex4
这比我想象的要简单。我在 Callout 内容的 resize 事件中添加了一个事件处理程序,然后在该事件中调用 Callout 方法 updatePopUpPosition() 来更新 Callout 位置,显然。
起初,我正在寻找一个可以在调整标注大小后监听的事件,但这将涉及在有效果时调度自定义事件。为resize 添加事件处理程序会在调整大小效果运行时多次触发,但动画和定位完美无缺,所以我保留了它。
<?xml version="1.0" encoding="utf-8"?>
<s:Callout xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
<fx:Script>
<![CDATA[
import mx.events.FlexMouseEvent;
import mx.events.ResizeEvent;
protected function editorBar_resizeHandler(event:ResizeEvent):void {
updatePopUpPosition();
}
]]>
</fx:Script>
<controls:MyContent id="editBar" width="100%" resize="editBar_resizeHandler(event)" />
</s:Callout>
【讨论】: