Flex Internals1 ~MXML 再入門~ 発表資料

Flex2勉強会第20回@大阪工業大学 で発表してきました。

発表資料はこちらです。

MXML の裏側がどうなっているかを掘り下げています。もっとマニアックに行く予定だったのですが、作っているうちに、結局初心者向けになってしまいました。

注目してほしいのは後半に出てくる「インスペクタ」。今年のお正月に作ったまま放置してたものを、この機会に発掘してみました。ソースコードの中にインスペクタのソースも入っているので、興味がある人は見てください。あまり Flex を理解していない時代の作品なので、Flex っぽくないソースになってますが…。

第2回はどうしようかと色々悩んだのですが、次回はてら子と共催ということで、レイアウトネタにしてみようかな、と構想中です。

以下、スライド作りの苦労話

今回は、Flex 勉強会ということで、資料を Flex で作ってみました……。が、これが予想以上に大変。

MXML でページ内で文字列を配置していくわけなのですが、<Text x="30" y="10" width="... といちいち座標指定するところにイライラ。fcwrap を導入してからは、かなり生産性は向上したのだけど、それでも絶対座標指定だと限界がある。

痛感したのは、テキストを配置するなら Flex よりも HTML+CSS の方が簡単だということ。もちろん、Flex Builder を使えば楽になるんだろうけど、それはそれで負けた気分。Flex でやるなら、GUI の MXML 配置ツールを作ってしまいたいところ。

本っぽいアニメーション効果は Flex book component (beta) を使って実現しています。ショートカットキーを割り当ててスライドっぽく操作できるようにしてます。[数字]+Enter という PowerPoint 風のショートカットキーを実装してます。自動ページ送りが始まって、なかなか気分爽快。

スライド資料って、普通は横長なんだけど、こういう2アップのレイアウトもなかなか面白いかもしれません。特に、ソース比較の部分が分かりやすい。

ちょっと裏話。Flex book component は左のページと右のページが別々の UIComponent として設計されています。これが見開きページを作るときに大きな壁になりました。どうやって解決してるかというと、左ページの文字と右ページの文字を、異なる Text として作成して逃げてます。ああ、場当たり的対処……。