kagamihogeの日記

kagamihogeの日記です。

Flex の IMXMLObject で MXML と AS を分離

画面デザインとロジックの分割テクニック | デベロッパーセンター

比較的お手軽に MXML と AS を分離するのに IMXMLObject ってのが使えるようだ。

■imxmlobjecttest.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" xmlns:local="*">
    <local:HogeHelper id="helper" />
    
    <mx:TextInput id="hoge" />
    <mx:Button id="hogeButton" click="helper.hogeButtonClickHandler(event)" />
</mx:Application>
package
{
    import flash.events.MouseEvent;
    
    import mx.core.IMXMLObject;

    public class HogeHelper implements IMXMLObject
    {
        private var view:imxmlobjecttest;
        
        public function initialized(document:Object, id:String):void {
            view = document as imxmlobjecttest;
        }
        
        public function hogeButtonClickHandler(event:MouseEvent):void {
            view.hoge.text = event.toString();
        }
    }
}

詳しいことはリンク先に譲るとして。

てか、view.hoge.text みたいにアクセスできるんなら、データバインディング使わなくても別にいいかな、みたいな……