我无法在另一个州设置控件的属性。
Latest_News_Display 位于 Latest_News 状态下。即使 currentState 设置为简介,我也要设置 Latest_News_Display 的 x 属性。但是,当我尝试使用 Latest_News.Latest_News_Display.x = 10 时,会返回错误 1120:访问未定义的属性Latest_News 。那我该怎么做呢?
答案 0 :(得分:1)
无法保证在您尝试设置其他状态时创建了某个组件。如果没有看到你的代码,很难肯定地说,但我猜这是基于你的错误的问题。
基本上,您必须创建自己的延迟值设置方法。因此,当您尝试设置它时,请执行以下操作:
if(Latest_News_Display){
Latest_News_Display.x = 10
} else {
cachedLatest_News_DisplayX = 10
}
然后听currentStateChange event然后设置新值:
protected function onCurrentStateChange(event:StateChangeEvent):void{
Latest_News_Display.x = cachedLatest_News_DisplayX
}
我还要补充一点,根据您问题中的粗体项目,您似乎试图通过名称Latest_News访问州。如果创建指向特定状态的局部变量,则可以执行此操作。但是,如果您使用MXML,那么您可能没有。即便如此,状态基本上只是一系列覆盖,您将无法直接访问该状态的组件。