Flash BuilderでAndroid/iPhoneアプリを作る、Flexモバイルで遊んでいます。
いくつか作ってみて思ったのは、「えっ?!Alertがないの?!」ということです。

ちょっとしたメッセージを表示するにも、何かしらのコンポーネントを配置して、そこに表示するようにしなくてはなりません。

他の人がどうしているのか、「Flexモバイル Alert」で調べると、やはり独自コンポーネントを作って対応している様子。要望が多いのか、Tour de Flexのサンプルにも、Alertの実装方法が登録されています。

そこで、私も27行で独自Alertを作ってみましたので、ここにメモっておきます。

<fx:Declarations>
    <fx:Component className="AlertMsg">
        <s:SkinnablePopUpContainer>
            <s:TitleWindow id="titleWin" title="Caption" close="close()">
                <s:VGroup horizontalAlign="center"
                    paddingTop="8" paddingBottom="8" paddingLeft="8"
                    paddingRight="8" gap="20">
                    <s:Label id="labelText" text="Message..." />
                    <s:Button label="OK" click="close()" />
                </s:VGroup>
            </s:TitleWindow>
            <fx:Script>
                <![CDATA[
                    import mx.managers.PopUpManager;
                    public static function show(owner:DisplayObjectContainer, 
                        message:String, title:String):void {
                        var a:AlertMsg = new AlertMsg();
                        a.open(owner, true);
                        a.titleWin.title = title;
                        a.labelText.text = message;
                        PopUpManager.centerPopUp(a);
                    }
                ]]>
            </fx:Script>
        </s:SkinnablePopUpContainer>
    </fx:Component>
</fx:Declarations>

使い方は、上記のコードを、Alertを使いたいMXMLにぺたりと貼り付けます。
そして、メッセージを表示したいところで以下のように書きます。

AlertMsg.show(this, "通信に失敗", "エラー");

参考 *