我是Flex的初学者,最近我一直在使用viewstates。我有几个使用以下命令初始化的自定义弹出标题窗口组件:
PopUpManager.createPopUp(this, ContentCreate, true);
它们都包含视图状态,并且非常相似所以我想将它们组合成一个弹出的标题窗口,并将弹出窗口初始化时的视图状态更改为弹出窗口的创建版本或更新。
我以为我很聪明哈哈,但是我在重构我的代码之后很快意识到,据我所知,我无法将参数传递给弹出窗口以指示我想要的状态,如果它是使用PopUpManager创建的
有没有人知道如何将参数传递给PopupManager,或者在mxml或代码中创建ContentCreate组件(TitleWindow)以便我可以指定视图状态?
答案 0 :(得分:2)
使用createPopUp方法创建弹出窗口时,将返回对创建窗口的引用。 例如:
pop = mx.managers.PopUpManager.createPopUp(this, TitleWindow, false);
您可以创建一个公共setState函数来告诉新的弹出窗口要显示哪个状态。
pop = mx.managers.PopUpManager.createPopUp(this, TitleWindow, false);
pop.setDisplay('Update');
你的例子更像是:
var pop:ContentCreate;
pop = PopUpManager.createPopUp(this, ContentCreate, true) as ContentCreate;
pop.setState('Update');
这应该有用。
可以找到更多信息here。
希望这有帮助。