1

我有一个ItemRenderer包含 2 个状态的列表。当它初始化时,我将它设置为 1 状态并监听将其切换到状态 2 的事件。

protected function onCreationComplete(event:FlexEvent):void{
   currentState = "state1";
   addEventListener(CustomEvent.Event1, switcherfunc);
}

protected function switcherfunc(event:FlexEvent):void{
   currentState = "state2";
}

两种状态之间的区别在于我隐藏/显示了一些标签。

问题是它不起作用。我仍然看到旧状态的视觉效果,即使 IAlert.show(currentState)显示正确的状态名称。

我尝试invalidateDisplayList();在 switch 函数中添加该行,但仍然没有运气。

protected function switch(event:FlexEvent):void{
   currentState = "state2";
   invalidateDisplayList();
}

我究竟做错了什么。有什么想法可以让这个 ItemRenderer 真正更新吗?

4

0 回答 0