我有如何将另一个mxml文件显示为应用程序的主视图
的以下问题例如,假设我有main.mxml
显示为主窗口。当我点击按钮时,我想显示另一个mxml文件,让我们说newMain.mxml
并关闭main.mxml
答案 0 :(得分:1)
是的,您可以在Adobe AIR中使用NativeWindow类来完成。
您可以创建本机窗口并激活它。 在将newMain.mxml激活到另一个本机窗口时,您可以将main.mxml设置为可见的假。
关闭newMain.mxml时,可以将main.mxml设置为可见true。
我正在提供一些示例Flex 4.5应用程序代码。
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication 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[
private var n:NativeWindow;
private var ni:NativeWindowInitOptions;
protected function onBtnOpenClick(event:MouseEvent):void
{
ni = new NativeWindowInitOptions();
ni.systemChrome = NativeWindowSystemChrome.STANDARD;
ni.type = NativeWindowType.NORMAL;
ni.transparent = false;
ni.resizable = false;
ni.minimizable = true;
ni.maximizable = true;
n = new NativeWindow(ni);
n.title = "My Native Window";
n.addEventListener(Event.CLOSING, onClosingWindowEvent);
n.activate();
nativeWindow.visible = false;
}
private function onClosingWindowEvent(event:Event):void
{
nativeWindow.visible = true;
}
]]>
</fx:Script>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:Button x="217" y="110" label="Open" click="onBtnOpenClick(event)"/>
</s:WindowedApplication>