2006年3月アーカイブ

本日 Adobe PDF&Flash テクニカルセミナーにお越しいただいた皆様、どうもありがとうございました。

さて、明日 3/29 の午後6時から Live! Eclipse2006 による日食の中継があります。例によって一部 FMS (Flash Media Server) による配信も行われる予定です。今回は中継点が3箇所あるので、日食が3回見れるかもしれません。晴天率の高い地域からの中継ですし楽しみです。

中継サイトはこちらです。

String クラス (livedocs@lab) のいくつかのメソッドは正規表現と一緒に使うことができます。文字列の中から特定の表現を抜き出したり置き換えたりしたいときにはなかなか便利です。

では、早速具体的なメソッドを見ていきましょう。

split() メソッド

split() メソッドは引数に渡されたパターンを区切りとして文字列を分解します。結果は配列に格納されます。

AS3 では ECMAScript3 に定義されている正規表現が使用できます。これで文字列の操作もずいぶん便利になりました。おかげで前より普通にスクリプト言語らしくなった気がします。

RegExp クラス

正規表現は「数字だけから成る文字列」とか「<p> と </p> で囲まれた文字列」のようなパターンを記述するための表現です。ECMAScript3 の仕様では、先に挙げた2つの例であればそれぞれ \d+ と <p>.*</p> といった記述ができます。

まずは先週の話になりますが、Flash Player 8.5 パブリックベータ が公開されました。こちらは Labs のリリースとは独立したタイミングで更新されていきます。つまり、ベータ版の Flex SDK で開発したアプリとは整合性がなくなるケースが起き得ます。ですので、主に既存のコンテンツの表示/動作確認が目的のリリースと理解して頂くのがよろしいかと思います。

また、Mactel マシン用 Flash Player 8 プレビューリリースも公開されています。こちらは 8.5 がリリースされるまでのつなぎという位置づけです。正式対応は Flash Player 8.5 正式版までお待ちください。

さて、Adobe Labs では Flex2 パブリックベータ2がリリースされました。今回から Flex Enterprise services 2 が Flex Data Services 2 (FDS2)と名前が変わりました。その他、今までの記事に関連する主な変更点は以下のとおりです。

  • applicationDomain 属性が URLRequest クラスから削除されました。代わりに LoaderContext という新しいクラスが導入され、こちらの同名の属性を使用するようになります。LoaderContext のインスタンスは load() メソッドの第2引数にオプションとして指定できます。例えば myLoader.load(myURLRequest, myLoaderContext) のような使い方です。LoaderContext クラスついては別途記事を書くつもりですが、まだ最終仕様が決定されていないようですので少し先になるかもです。
  • メインの swf ファイルに自身の読み込み完了のイベントを処理するハンドラを登録できるようになりました。loaderInfo.addEventListener() を使用して登録します。
  • Stage クラスの frameRate 属性や addChild 等いくつかのメソッドが、最初に stage に読み込まれた swf からのアクセスのみに制限されるようになりました。ちなみに frameRate は書き込み可能な属性です。
  • securityDomain 間のイベント伝達やメソッド呼び出しが厳しく制限されるようになりました。影響箇所が多いため詳細は都度機会がある毎に触れたいと思います。

ベータ2から Flex Builder 2 にはチャートコンポーネントが含まれています。Flex Data Services 2 は従来どおり charts.swc を自分で配置する必要があります。

今日は Electrical Fantasista 2006 の Flash Fantasista Artist Talk に行ってきた話です。

展示物については ITmedia さんの記事に詳しく紹介されています。ちょっと見るだけでなくしばらく一緒にごろごろしているとだんだんと見えてくるような種類の展示です。Origami 登場の噂もあったのですが、残念ながら今日はまだありませんでした。14日(火)まで開催しているそうですので、運の良い人は明日以降見れるかもです。

肝心の Talk は前座の西村さん(右の写真)の Flash8 紹介に続いて、森山さん、程さん、今井さん、近森さんのお仕事のお話を聞くことができました。先日の @IT リッチクライアントセミナーのトークのテーマだったエクスペリエンスデザインとメディアアートって結構近い話のようなのに、どうしてこんなに違った空間になるんだろうとか、やっぱり作ること自体が目的化する罠ってあるなあとかいうことが引っかかった3時間でした。

Adobe と Macromedia の合併話をまだ知らない人がいたのはともかく、Flash8 の新機能もまだまだ伝えられていないのだなあということを改めて反省しております。

先日 Adobe Labs にて、Ajax 関連の発表が2件行われました。

一つ目は、FABridge (Flex Ajax Bridge) と呼ばれる Flex2 アプリケーションと Ajax アプリケーションを連携させるためのライブラリです。これを使うと、Ajax 側から Flex コンポーネントのメソッドを呼び出したり、あるいは逆に Flex 側から Ajax の関数を呼び出したりが簡単にできます。つまり、Ajax アプリケーションに Flex アプリケーションを埋め込むといったことが気軽にできるようになるわけです。現在はまだアルファ前の段階ということで、これからまだ変更などは多々ありそうですが、興味のある方は是非試してみてください。

もう一つは、ACFDS (Ajax Client for Flex Data Services) というちょっと長ったらしい名前を持つライブラリです。これは Ajax アプリケーションから Flex Data Service を利用するためのものです。例えば、パブリッシャー/サブスクライバー型メッセージング機能やリアルタイムデータシェアリング等の機能が Ajax アプリケーションからも使用できるようになります。こちらはまだダウンロードできるサンプルは提供されていません。現時点では年末を目処にフリーで提供できることを目指すという状況のようです。

Loader オブジェクトで (URLLoader ではありません) swf ファイルをロードするとき、ロード先のアプリケーションドメインを指定することができます。

アプリケーションドメインはクラス定義の単位になるため、実行時に swf をロードすることで動的にクラス定義を追加するといった使い方ができます。また、複数のアプリケーションドメインを持つことができるため、同じクラスの異なるバージョンを同時にアプリ内で使うことも可能です。

それでは、アプリケーションドメインの使い方について詳しく見ていきましょう。

今回は、flash.net パッケージの関数2つを紹介します。

navigateToURL() 関数

AS3 アプリケーションからもう一つブラウザのウインドウを開きたい、あるいは今 AS3 アプリケーションを実行中のウインドウを他の HTML コンテンツで置き換えたいというときには navigateToURL() 関数 (livedocs@lab) を使います。以下が関数の定義です。

外部からの XML データ等を読み込むときは URLLoader クラス (livedocs@lab) を使うことができます。

以前紹介した Loader クラスは swf やイメージを主に表示目的でロードするためのクラスでした。Loader クラスの記事を書いていた頃は URLLoader は Loader のサブクラスでしたが、今は独立したクラスになっています。

先日 IE6 の仕様変更 (詳細はこちら) がありました。この IE6 の変更により Flash Player を含む ActiveX コントロールでコンテンツを HTML ページ内に表示する際にユーザが明示的に確認を求められるケースがあります。今回の HotFix はそれに対応したもので、Flex が生成する HTML ページの記述が IE の変更に対応したものになります。詳細およびダウンロードはこちらのページ(英文です)をご覧ください。日本語のページも近々できることと思います。

もう少しだけ QName の話題を続けます。

QName と child() メソッド

child() や attribute() を呼ぶときに修飾名を使う必要があれば QName を引数として渡すことができます。以下のサンプルを使って具体的に見てみましょう。

QName クラス

QName クラス (livedocs@lab) は XML の要素や属性の修飾名を扱うために使われます。QName のインスタンスは uri と localName という属性を持っています。それぞれ uri 属性は名前空間修飾子 localName 属性はローカル名の値を持ちます。

2014年1月

Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
レンタルサーバー

月別 アーカイブ

Powered by Movable Type 4.261