重新加载 AIR 应用程序在 flex 中删除皮肤和背景图像

Reload AIR application remove Skin and background image in flex

我正在处理 AIR 应用程序。我在其中放置刷新按钮来刷新应用程序。当用户点击刷新按钮后,代码刷新我的应用程序。

protected function onRefreshClickHandler(event:MouseEvent):void
{
var app:WindowedApplication =
WindowedApplication(FlexGlobals.topLevelApplication);

var mgr:ProductManager =
new ProductManager("airappinstaller");

mgr.launch("-launch " +
                        app.nativeApplication.applicationID + " " +
                        app.nativeApplication.publisherID);

app.close();
}

以上代码运行良好。
现在,再次当应用程序启动时,按钮的 skinclass 和 borderConatiner 的 backgroundImage 不起作用。

<s:Button click="onRefreshClickHandler(event)" 
                  buttonMode="true" skinClass="skins.ButtonRefresh"/>

并且:

<s:BorderContainer width="100%" borderVisible="false" 
                       backgroundImage="@Embed('assets/images/back.png')">

我不知道为什么会发生这种奇怪的事情。

有什么解决办法吗?
重新启动应用程序后如何恢复皮肤?

谢谢。

现在,我得到了问题的解决方案。
我通过在 creationComplete 运行时给出 skinclassbackgroundImage 来解决它,例如:

borderContainer.setStyle("backgroundImage","assets/images/back.png");
btnRefresh.setStyle("skinClass",CustomButtonRefreshSkin);

希望,它会对其他人有所帮助。