我有一个包含2个州的列表ItemRenderer
。初始化时,我将其设置为1状态并侦听将其切换到状态2的事件。
protected function onCreationComplete(event:FlexEvent):void{
currentState = "state1";
addEventListener(CustomEvent.Event1, switcherfunc);
}
protected function switcherfunc(event:FlexEvent):void{
currentState = "state2";
}
两种状态之间的区别在于我隐藏/显示一些标签。
问题在于它不起作用。我仍然看到旧状态的视觉效果,即使我Alert.show(currentState)
,它也会显示正确的状态名称。
我尝试在切换功能中添加行invalidateDisplayList();
,但仍然没有运气。
protected function switch(event:FlexEvent):void{
currentState = "state2";
invalidateDisplayList();
}
我做错了什么。任何想法如何让这个ItemRenderer真正更新?