私はAIR for AndroidとStarlingフレームワークでゲームを開発しています。私はIDEとしてフラッシュCCを使用しています。私はフラッシュの中で私はそれがうまく動作しますが、私はアンドロイドにそれを公開するときに正しく動作しませんテストします。AIRアプリケーションはIDE内では動作しますが、デバイス上では動作しません
メニュー、レベル選択、ゲームプレイ画面を非表示にするScreen Managerクラスがあります。そのために私はカスタムイベントクラスを持っています。以下の関数はScreen Managerクラスの内部にあります。 TO_GAMEではなく、すべての目的地の値で動作していますが、 です。
private function onNavigate(e: NavEvent)
{
if (e.destination == Destination.TO_HOME)
{
menuScreen.wake();
}
else if (e.destination == Destination.TO_LEVELS)
{
levelScreen.wake();
}
else if (e.destination == Destination.TO_GAME)
{
gameScreen.wake();
}
else if (e.destination == Destination.TO_HELP)
{
helpScreen.wake();
}
else if (e.destination == Destination.TO_ABOUT)
{
aboutScreen.wake();
}
}
ユーザーがレベルボタンをクリックすると、イベントが発生します。他のボタンを参照してください
var btn:Button = e.target as Button;
if (btn == backBtn)
{
this.dispatchEvent(new NavEvent(NavEvent.NAVIGATE , Destination.TO_HOME));
this.sleep();
}
else
{
//just testing if I can get the level number from the position of the level button
trace(this.getLevelNumber(btn.x,btn.y));
this.dispatchEvent(new NavEvent(NavEvent.NAVIGATE , Destination.TO_GAME));
this.sleep();
}
私はこれまでのところ別のボタンからこのイベントを発生させましたが、これまで運がありませんでした。 IDE内部で作業していますが、デバイス内部で何も起こりません。他のすべてのイベントは機能しています。上記の関数の最初の条件がうまくいきます。
他人を傷つける可能性のある問題に対して貴重な回答を投稿していただき、ありがとうございます。 –