stackoverflowers さん、こんにちは。
私はコードを書くのに行き詰まっています。ビュースタック ウィッチ ロード 5 モジュールを使用するアプリケーションがあります。各モジュールは moduleLoader タグを介してロードされ、すべてに ID があります。
ロードされたすべてのモジュールには、コンテキスト メニューがあります。コンテキスト メニューには 5 つの menuItems があります。ビュースタックのビューごとに 1 つの menuItem。
コンテキスト メニューは xml 経由で読み込まれます。
これは私のアプリケーション ファイルです。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"
backgroundColor="#b1b1b1"
backgroundGradientColors="[#b1b1b1,#252525]">
<mx:Script>
<![CDATA[
import mx.core.Container;
//change viewstack views via modules context menu
public function switchView(viewId:String):void
{
var container:Container = Container(tops.getChildByName(viewId));
if (container != null)
{
tops.selectedChild = container;
}
}
]]>
</mx:Script>
<mx:ViewStack id="tops" width="100%" height="100%">
<mx:ModuleLoader id="admin" url="view/admin.swf" width="100%" height="100%"/>
<mx:ModuleLoader id="tv" url="view/tv.swf" width="100%" height="100%"/>
<mx:ModuleLoader id="community" url="view/community.swf" width="100%" height="100%"/>
<mx:ModuleLoader id="shop" url="view/shop.swf" width="100%" height="100%"/>
<mx:ModuleLoader id="communicator" url="view/communicator.swf" width="100%" height="100%"/>
</mx:ViewStack>
</mx:Application>
そして、これは私のモジュールの私のswitch文です
public function changeView():void{
switch(action) {
case "admin":
parentApplication.switchView("admin");
break;
case "tv":
parentApplication.switchView("tv");
break;
case "shop":
parentApplication.switchView("shop");
break;
case "community":
parentApplication.switchView("community");
break;
case "default":
parentApplication.switchView("communicator");
break;
}
}
これは私のコンテキストメニューxmlです
<mx:XML id="appMenu">
<root>
<menuitem enabled="false"/>
<menuitem label="Administration" action="admin" icon="adminMDI"/>
<menuitem label="Television" action="tv" icon="tvMDI"/>
<menuitem label="Community" action="community" icon="communityMDI"/>
<menuitem label="Shopping Mall" action="shop" icon="shoppingMallMDI"/>
<menuitem label="Communicator" action="default" icon="communicatorMDI"/>
</root>
</mx:XML>
私がしたいのは、コンテキスト メニューのメニュー項目の 1 つをクリックして、viewstack のビューを切り替えることです。モジュールからアプリケーションに通信できません。私は何を間違っていますか?どうすればいいですか?誰でも私を助けることができますか?
Oyeah 忘れる前に
コンテキスト メニューの xml はモジュールにありますが、コンテキスト メニューはボタンを拡張する as ファイルにあります。
これを達成する方法の良い例を教えてください。
感謝
DJ