<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>RichMedia+ &#187; ActionScript Library</title>
	<atom:link href="http://blog.richmediaplus.com/tag/actionscript-library/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.richmediaplus.com</link>
	<description>About the Adobe&#039;s RIA related solution and technology, like Adobe Air, Adobe Flex, Mobile Dev. You also can find the SEO for Flex, RIA, User Ex in this blog.</description>
	<lastBuildDate>Fri, 16 Dec 2011 09:33:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>將 Box2D Alchemy WCK 打包為 SWC 類別庫</title>
		<link>http://blog.richmediaplus.com/2011/07/box2d-wck-swc-flash/</link>
		<comments>http://blog.richmediaplus.com/2011/07/box2d-wck-swc-flash/#comments</comments>
		<pubDate>Fri, 08 Jul 2011 02:04:45 +0000</pubDate>
		<dc:creator>Ticore Shih</dc:creator>
				<category><![CDATA[ActionScript Library]]></category>
		<category><![CDATA[ActionScript3]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Box2D]]></category>

		<guid isPermaLink="false">http://blog.richmediaplus.com/?p=795</guid>
		<description><![CDATA[最近開始需要用到物理引擎 網路上有好幾套 Flash 物理引擎 比較多人用、資料比較豐富的似乎是從 C 移植過來的 Box2D 同樣是移植過來的版本居然還有分兩種 Box2D Flash AS3 與 Box2D Alchemy WCK Box2D Flash AS3 整個是純 AS3 寫成的 Box2D Alchemy WCK 是直接拿 Box2D C 程式，透過 Alchemy 編譯為 Flash SWC 然後加上其它 AS3 Wrapper Class 來的 兩種版本大略使用過之後發現 Box2D Alchemy WCK 有許多優點 執行效能較佳 與 Box2D 原版 API 接近，假如原版更新了，也可以自己架設 Alchemy 更新到 Flash 版 提供了很多輔助類別可以使用，譬如能夠作到各種形狀重力場等 與 [...]
Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2010/07/richmediaplus-utils-alertutils/' rel='bookmark' title='richmediaplus.utils.AlertUtils'>richmediaplus.utils.AlertUtils</a></li>
<li><a href='http://blog.richmediaplus.com/2011/03/warning-class-close-does-not-extend-the-definebits-asset-base-class-flash-display-bitmap/' rel='bookmark' title='Warning: Class &#8216;Close&#8217; does not extend the &#8216;DefineBits&#8217; asset base class &#8216;flash.display.Bitmap&#8217;.'>Warning: Class &#8216;Close&#8217; does not extend the &#8216;DefineBits&#8217; asset base class &#8216;flash.display.Bitmap&#8217;.</a></li>
<li><a href='http://blog.richmediaplus.com/2011/10/robotlegs-module-issue/' rel='bookmark' title='RobotLegs Module 開發上的問題'>RobotLegs Module 開發上的問題</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>最近開始需要用到物理引擎<br />
網路上有好幾套 Flash 物理引擎<br />
比較多人用、資料比較豐富的似乎是從 C 移植過來的 Box2D<br />
同樣是移植過來的版本居然還有分兩種<br />
<a href="http://box2dflash.sourceforge.net/">Box2D Flash AS3</a> 與 <a href="http://www.sideroller.com/wck/">Box2D Alchemy WCK</a><br />
Box2D Flash AS3 整個是純 AS3 寫成的<br />
Box2D Alchemy WCK 是直接拿 Box2D C 程式，透過 Alchemy 編譯為 Flash SWC<br />
然後加上其它 AS3 Wrapper Class 來的<br />
兩種版本大略使用過之後發現 Box2D Alchemy WCK 有許多優點</p>
<ul>
<li>執行效能較佳</li>
<li>與 Box2D 原版 API 接近，假如原版更新了，也可以自己架設 Alchemy 更新到 Flash 版</li>
<li>提供了很多輔助類別可以使用，譬如能夠作到各種形狀重力場等</li>
<li>與 Flash IDE 完美整合在一起，甚至只要用拖拉的方式就可以建立好需要的物理場景</li>
</ul>
<p>唯一的缺點只有檔案較大，沒有提供單一打包好的 SWC，導致編譯速度太慢問題<br />
用了之後一定會占掉 300kb 左右大小，這或許也不算很大<br />
不過編譯速度太慢真的很傷腦筋<br />
所以本篇文章的目的就是要把整個 Project 打包為單一 SWC<br />
如此一來，編譯速度就會大幅提升，也能很容易的拿到 Flash Builder 內使用</p>
<p>當我實際開始著手這樣工作之後，才發現遇到很多問題<br />
也懶得一一解釋原因了<br />
主要的步驟如下：</p>
<ol>
<li>開一個空白的 Flex Library Project &#8211; Box2DAlchemyLib</li>
<li>將 Box2D.swc 加入到 lib path</li>
<li>將所有的 AS3 Class 放置到 Flex Lib src 下，修正未宣告型別、存取修飾子等語法問題</li>
<p>e.g. /src/wck/WavesEffect.as -> /src/extra/WavesEffect.as</p>
<li>於空的 Package 下放置空白 Dummy Class</li>
<p>e.g. /src/Box2DAS/Cls.as</ol>
<p>以上就能產生出可以同時給 Flash/Flex 用的 SWC 類別庫了<br />
假如想要把 Demo.fla 套用新的 SWC 類別庫<br />
修改步驟如下：</p>
<ol>
<li>修改 fla AS3 Setting，path 加入 Box2DAlchemyLib.swc，並取消發布 SWC</li>
<li>修改 MovieClip 設定</li>
<p><code>GravityCapsule Symbol<br />
  Class: GravityCapsule<br />
  Base Class: gravity.GravityCapsule</p>
<p> GravityLinear Symbol<br />
  Class: GravityLinear<br />
  Base Class: gravity.GravityLinear</p>
<p> GravityRadial Symbol<br />
  Class: GravityRadial<br />
  Base Class: gravity.GravityRadial</p>
<p> GravitySine Symbol<br />
  Class: GravitySine<br />
  Base Class: gravity.GravitySine</code>
</ol>
<p>修改完之後，編譯時間從原本 30 秒大幅縮短到 9 秒呢<br />
這是我修改完之後的 <a href="https://sites.google.com/site/riafiles/Box2DAlchemyLib_20110622.fxpl?attredirects=0&#038;d=1">Box2D WCK Library Project</a>，從 2011-06-15 那版改的</p>
<p>Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2010/07/richmediaplus-utils-alertutils/' rel='bookmark' title='richmediaplus.utils.AlertUtils'>richmediaplus.utils.AlertUtils</a></li>
<li><a href='http://blog.richmediaplus.com/2011/03/warning-class-close-does-not-extend-the-definebits-asset-base-class-flash-display-bitmap/' rel='bookmark' title='Warning: Class &#8216;Close&#8217; does not extend the &#8216;DefineBits&#8217; asset base class &#8216;flash.display.Bitmap&#8217;.'>Warning: Class &#8216;Close&#8217; does not extend the &#8216;DefineBits&#8217; asset base class &#8216;flash.display.Bitmap&#8217;.</a></li>
<li><a href='http://blog.richmediaplus.com/2011/10/robotlegs-module-issue/' rel='bookmark' title='RobotLegs Module 開發上的問題'>RobotLegs Module 開發上的問題</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.richmediaplus.com/2011/07/box2d-wck-swc-flash/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Flash CS 5.5 TLF RSL 行為測試</title>
		<link>http://blog.richmediaplus.com/2011/05/flash-cs-5-5-tlf-rsl/</link>
		<comments>http://blog.richmediaplus.com/2011/05/flash-cs-5-5-tlf-rsl/#comments</comments>
		<pubDate>Mon, 23 May 2011 13:11:40 +0000</pubDate>
		<dc:creator>Ticore Shih</dc:creator>
				<category><![CDATA[ActionScript Library]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[ActionScript3]]></category>
		<category><![CDATA[TLF]]></category>

		<guid isPermaLink="false">http://blog.richmediaplus.com/?p=762</guid>
		<description><![CDATA[Flash CS 5 或 5.5 有支援 TLF 文字 在 AS3 設定裡面也可以發現多出一個 TLF RSL 只是它預設會先檢查本地 Flash Player Cache 沒有的話再到網路上載入 SWZ，失敗的話才會從相對路徑載入 SWZ 這對於多媒體光碟製作可能有些困擾 不過可以自行調整優先順序，相對路徑 SWZ 往上拉就好了 除此之外，假如是直接發布成 Projector 執行檔 基本上它是不支援 RSL 的，會出現警告訊息 然後一律變成 Merged into code 模式 Warning: No libraries were linked as Runtime Shared Libraries (RSLs) because of your publish settings: Windows Projector 假如改成 External 模式，就必須自己寫載入 [...]
Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2010/12/adobe-flex-application-lifecycle/' rel='bookmark' title='Adobe Flex Application LifeCycle'>Adobe Flex Application LifeCycle</a></li>
<li><a href='http://blog.richmediaplus.com/2011/09/fp-102-103-textfield-font-issue/' rel='bookmark' title='Flash Player 10.2, 10.3 TextField 中文字體問題'>Flash Player 10.2, 10.3 TextField 中文字體問題</a></li>
<li><a href='http://blog.richmediaplus.com/2011/09/nested-mask-crash-issue/' rel='bookmark' title='巢狀遮罩造成 Flash Player 死機的 Bug'>巢狀遮罩造成 Flash Player 死機的 Bug</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Flash CS 5 或 5.5 有支援 TLF 文字<br />
在 AS3 設定裡面也可以發現多出一個 TLF RSL<br />
只是它預設會先檢查本地 Flash Player Cache<br />
沒有的話再到網路上載入 SWZ，失敗的話才會從相對路徑載入 SWZ</p>
<p><a href="http://blog-uploads.richmediaplus.com/2011/05/FlashCS55_TLF_RSL01.png"><img src="http://blog-uploads.richmediaplus.com/2011/05/FlashCS55_TLF_RSL01-201x300.png" alt="" title="FlashCS55_TLF_RSL01" width="201" height="300" class="alignnone size-medium wp-image-763" /></a></p>
<p>這對於多媒體光碟製作可能有些困擾<br />
不過可以自行調整優先順序，相對路徑 SWZ 往上拉就好了</p>
<p><a href="http://blog-uploads.richmediaplus.com/2011/05/FlashCS55_TLF_RSL02.png"><img src="http://blog-uploads.richmediaplus.com/2011/05/FlashCS55_TLF_RSL02-300x300.png" alt="" title="FlashCS55_TLF_RSL02" width="300" height="300" class="alignnone size-medium wp-image-764" /></a></p>
<p>除此之外，假如是直接發布成 Projector 執行檔<br />
基本上它是不支援 RSL 的，會出現警告訊息<br />
然後一律變成 Merged into code 模式</p>
<p>Warning: No libraries were linked as Runtime Shared Libraries (RSLs) because of your publish settings: Windows Projector</p>
<p>假如改成 External 模式，就必須自己寫載入 RSL 的程式<br />
一個比較好的方式是，先發布成 SWF，然後自己手動把具有動態載入 RSL 能力的 SWF 轉成 Projector</p>
<p>Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2010/12/adobe-flex-application-lifecycle/' rel='bookmark' title='Adobe Flex Application LifeCycle'>Adobe Flex Application LifeCycle</a></li>
<li><a href='http://blog.richmediaplus.com/2011/09/fp-102-103-textfield-font-issue/' rel='bookmark' title='Flash Player 10.2, 10.3 TextField 中文字體問題'>Flash Player 10.2, 10.3 TextField 中文字體問題</a></li>
<li><a href='http://blog.richmediaplus.com/2011/09/nested-mask-crash-issue/' rel='bookmark' title='巢狀遮罩造成 Flash Player 死機的 Bug'>巢狀遮罩造成 Flash Player 死機的 Bug</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.richmediaplus.com/2011/05/flash-cs-5-5-tlf-rsl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>richmediaplus.utils.AlertUtils</title>
		<link>http://blog.richmediaplus.com/2010/07/richmediaplus-utils-alertutils/</link>
		<comments>http://blog.richmediaplus.com/2010/07/richmediaplus-utils-alertutils/#comments</comments>
		<pubDate>Fri, 02 Jul 2010 08:29:17 +0000</pubDate>
		<dc:creator>Alvin / Aedis.Ju</dc:creator>
				<category><![CDATA[ActionScript Library]]></category>
		<category><![CDATA[ActionScript3]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[richmediaplus Lab]]></category>
		<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[richmediaplus library]]></category>
		<category><![CDATA[richmediaplus.utils.AlertUtils]]></category>

		<guid isPermaLink="false">http://blog.richmediaplus.com/?p=629</guid>
		<description><![CDATA[在 Flex/Flash 项目中，richmediaplus.utils.AlertUtils 比 Flex.Alert 更容易控制和修改 Alert Message 的信息分类，信息内容，能对整个项目的 Alert Message 做到统一化处理。AlertUtils 完成于 2006-2007 之间，最近整理文档，所以拿出来分享。 先看一下 Flex/Flash 自带的 Alert: Alert.show&#40;text:String = &#34;&#34;, title:String = &#34;&#34;, flags:uint = 0x4, parent:Sprite = null, closeHandler:Function = null, iconClass:Class = null, defaultButtonFlag:uint = 0x4&#41;:Alert Alert Message 直接写在 Flex/Flash 的项目中，对于 Message 的不同性质，不同内容，不同parent，不同icon，不同 button 首选项&#8230;都要进行逐一的控制，而每次可能都会常常填写相同的 Message 内容 和 Message 标题。多的事情看起来就很讨厌，麻烦的事情更加让人不想去做。若遇到问题需要对 Message [...]
Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2010/07/alertutils-alertutil/' rel='bookmark' title='AlertUtils 更名为 AlertUtil'>AlertUtils 更名为 AlertUtil</a></li>
<li><a href='http://blog.richmediaplus.com/2010/06/richmediaplus-controls-pager/' rel='bookmark' title='richmediaplus.controls.Pager'>richmediaplus.controls.Pager</a></li>
<li><a href='http://blog.richmediaplus.com/2009/04/create-trail-information-and-expired-date-in-actionscript3-and-flex3/' rel='bookmark' title='Create Trail Information &amp; Expired Date in ActionScript3 &amp; Flex'>Create Trail Information &#038; Expired Date in ActionScript3 &#038; Flex</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><em>在 Flex/Flash 项目中，richmediaplus.utils.AlertUtils 比 Flex.Alert 更容易控制和修改 Alert Message 的信息分类，信息内容，能对整个项目的 Alert Message 做到统一化处理。AlertUtils 完成于 2006-2007 之间，最近整理文档，所以拿出来分享。</em></p>
<p>先看一下 Flex/Flash 自带的 Alert:</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript3" style="font-family:monospace;">Alert<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">show</span><span style="color: #000000;">&#40;</span><span style="color: #004993;">text</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">String</span> = <span style="color: #990000;">&quot;&quot;</span><span style="color: #000066; font-weight: bold;">,</span> title<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">String</span> = <span style="color: #990000;">&quot;&quot;</span><span style="color: #000066; font-weight: bold;">,</span> flags<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">uint</span> = 0x4<span style="color: #000066; font-weight: bold;">,</span> <span style="color: #004993;">parent</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Sprite</span> = <span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000066; font-weight: bold;">,</span> closeHandler<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Function</span> = <span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000066; font-weight: bold;">,</span> iconClass<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Class</span> = <span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000066; font-weight: bold;">,</span> defaultButtonFlag<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">uint</span> = 0x4<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span>Alert</pre></div></div>

<p>Alert Message 直接写在 Flex/Flash 的项目中，对于 Message 的不同性质，不同内容，不同parent，不同icon，不同 button 首选项&#8230;都要进行逐一的控制，而每次可能都会常常填写相同的 Message 内容 和 Message 标题。多的事情看起来就很讨厌，麻烦的事情更加让人不想去做。若遇到问题需要对 Message 进行修改，Alert 有多少我们就要改多少，而且时不时会有不小心遗漏的现象的问题出现。如果一开始就对 Alert Message 进行统一有效的管理，尽可能的简洁 Alert Message 的方式，在后面的项目开发过程中，将会有事半功倍的效果。</p>
<p>下面开始对 Alert Message 进行修改和设计。</p>
<p>为了达到每次修改 Message Content 而不用重新编译 Flex/Flash，我们将 Message 以 XML 的形式存在，而 Flex/Flash 要做的就是读取 message.xml，然后通过直接传入 Node String(&#8216;error.richmediaplus.login&#8217;) 的方式，将相对应的 XML 信息体现在画面上。如果需要对 Message 进行相关的新增，修改，删除时，只对 message.xml 修改即可。</p>
<p>既然要用到 Node String ，就要在设计上与程序员有个统一的共识，目前认为<span style="color: #3366ff;"><strong><em>『Message 分类』.『项目模块』.『详细信息』</em></strong></span>是比较好的选择之一。『Message 分类』可以对 Message 的性质进行统一管理，而且对其出现相应的 iconClass 进行统一设计。</p>
<p>『Message 分类』</p>
<ul>
<li>注意（attention）</li>
<li>确认（question）</li>
<li>信息（info）</li>
<li>错误（error）</li>
</ul>
<p>『项目模块』</p>
<ul>
<li>注册模块（register）</li>
<li>登录模块（login）</li>
</ul>
<p>注册模块（register）的『详细信息』</p>
<ul>
<li>密码规则验证（passwordRule）</li>
<li>重复输入密码验证（passwordRepeatRule）</li>
</ul>
<p>登录模块（login）的『详细信息』</p>
<ul>
<li>密码错误（passwordWrong）</li>
</ul>
<p>因此整个 message.xml 设计如下：</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;?xml</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> <span style="color: #000066;">encoding</span>=<span style="color: #ff0000;">&quot;UTF-8&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;message<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;title<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Message Title<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/title<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;info<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;common<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;test<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>这是替换字1: [0]，这是替换字2: [1]，这是替换字3: [2]<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/test<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/common<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;search<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;resultNone<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>您所输入的关键字 [0] 查询不到相关信息！<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/resultNone<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/search<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/info<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;attention<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;register<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;passwordRule<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>密码长度6～16个字符，字母区分大小写<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/passwordRule<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;passwordRepeatRule<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>请重复输入一次相同的登录密码<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/passwordRepeatRule<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/register<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/attention<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;question<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;user<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;del<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>确定删除帐号？<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/del<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/user<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/question<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;error<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;login<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;passwordWrong<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>对不起，您的密码不正确! <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/passwordWrong<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/login<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;undefined<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>不明的错误原因。<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/undefined<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/error<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/message<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>XML 内容除了上面所说的<span style="color: #3366ff;"><strong><em>『Message 分类』.『项目模块』.『详细信息』</em></strong></span>之外，还有个<span style="color: #FF0000;"><strong> title </strong></span>的 NODE 和<span style="color: #FF0000;"><strong>比较特殊的“[0][1][2]”</strong></span>等。一个项目的 Alert Message Title 一般来说比较固定，所以也可以设置在 XML 里，不用每次都要去敲，而比较特殊的“[0][1][2]”是 Message 内容的替代标识，适用于 Message 内容相同但主体不同的例子，如上面的 XML 的 info.search.resultNone 都是反应查询不到关键字的意思，但关键字每次可能不一样，我们可以及时对用户查询不到的关键字进行替换，而不用整个 Message 重新写过，只要传入相应的参数组合即可。</p>
<p>Alert Message 的形式</p>
<ul>
<li>『OK』</li>
<li>『YES』『NO』</li>
<li>『YES』『NO』『CANCEL』</li>
</ul>
<p>因此 AlertUtils 有 3 个 public static function</p>
<ul>
<li>AlertOKMsg</li>
<li>AlertYesNoMsg</li>
<li>AlertYesNoCancelMsg</li>
</ul>
<p>3 个不同的方法，基本可以覆盖所有需要 Alert Message 的方式，他们对应的button 首选项也是不一样，如 AlertOKMsg 的 button 首选项是 Alert.OK，而 AlertYesNoMsg 的 button 首选项是 Alert.NO。</p>
<p>看看，到目前为止</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript3" style="font-family:monospace;">Alert<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">show</span><span style="color: #000000;">&#40;</span><span style="color: #004993;">text</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">String</span> = <span style="color: #990000;">&quot;&quot;</span><span style="color: #000066; font-weight: bold;">,</span> title<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">String</span> = <span style="color: #990000;">&quot;&quot;</span><span style="color: #000066; font-weight: bold;">,</span> flags<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">uint</span> = 0x4<span style="color: #000066; font-weight: bold;">,</span> <span style="color: #004993;">parent</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Sprite</span> = <span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000066; font-weight: bold;">,</span> closeHandler<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Function</span> = <span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000066; font-weight: bold;">,</span> iconClass<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Class</span> = <span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000066; font-weight: bold;">,</span> defaultButtonFlag<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">uint</span> = 0x4<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span>Alert</pre></div></div>

<p>分析一下，只剩下3个不确定的参数</p>
<ul>
<li>text</li>
<li>parent</li>
<li>closeHandler</li>
</ul>
<p>其中 parent 一般默认为 Application，因此只剩下 text 和 closeHandler。</p>
<p>所以默认的 AlertUtils 相关 Alert Message 方法的参数设计为</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #009900; font-style: italic;">//message 为 Message Node String，如'error.richmediaplus.login'。</span>
<span style="color: #009900; font-style: italic;">//closeHandler 为 Alert Message 关闭的方法，默认为 null。</span>
<span style="color: #009900; font-style: italic;">//parent 为 事件区域，默认为 Application。</span>
<span style="color: #009900; font-style: italic;">//defaultButtonFlag 为 AlertUtils 对应方法的 button 首选项，如 AlertOKMsg 的默认 button 首选项是 Alert.OK，而 AlertYesNoMsg 的默认button 首选项是 Alert.NO。</span>
<span style="color: #009900; font-style: italic;">//title 为 Alert Message Title，默认为 message.xml 中的 title。</span>
<span style="color: #009900; font-style: italic;">//parameters 为可选参数数组，对相应的[0][1][2][3]...进行替换。</span>
AlertUtils<span style="color: #000066; font-weight: bold;">.</span>AlertXXXMsg<span style="color: #000000;">&#40;</span><span style="color: #004993;">message</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">String</span><span style="color: #000066; font-weight: bold;">,</span> closeHandler<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Function</span> = <span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000066; font-weight: bold;">,</span> <span style="color: #004993;">parent</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Sprite</span> = <span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000066; font-weight: bold;">,</span> defaultButtonFlag<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">uint</span> = Alert<span style="color: #000066; font-weight: bold;">.</span>NO<span style="color: #000066; font-weight: bold;">,</span> title<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">String</span> = <span style="color: #990000;">&quot;&quot;</span><span style="color: #000066; font-weight: bold;">,</span> <span style="color: #004993;">parameters</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Array</span> = <span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000000;">&#41;</span></pre></div></div>

<p>所以，当需要呼出密码规则不符的警告时，只需 AlertUtils.AlertOKMsg(“attention.register.passwordRule”)就可返回“密码长度6～16个字符，字母区分大小写”的信息；若关键字 richmediaplus 搜索不到相应信息，只需 AlertUtils.AlertOKMsg(“info.search.resultNone”, ['richmediaplus'])，就可以返回“您所输入的关键字richmediaplus查询不到相关信息！”</p>
<p>具体详见<br />
<a href="http://code.richmediaplus.com/AlertUtils/AlertUtilsDemo.html" target="_blank">AlertUtils Demo</a><br />

<object width="450" height="400">
<param name="movie" value="http://code.richmediaplus.com/AlertUtils/AlertUtilsDemo.swf"></param>
<param name="quality" value="high"></param>
<param name="wmode" value="window"></param>
<param name="menu" value="false"></param>
<param name="bgcolor" value="#FFFFFF"></param>
<param name="allowScriptAccess" value="always"></param>
<embed type="application/x-shockwave-flash" width="450" height="400" src="http://code.richmediaplus.com/AlertUtils/AlertUtilsDemo.swf" quality="high" bgcolor="#FFFFFF" wmode="window" menu="false" ></embed>
</object>
</p>
<p><a href="http://code.richmediaplus.com/AlertUtils/srcview/index.html" target="_blank">AlertUtils Source</a></p>
<p>Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2010/07/alertutils-alertutil/' rel='bookmark' title='AlertUtils 更名为 AlertUtil'>AlertUtils 更名为 AlertUtil</a></li>
<li><a href='http://blog.richmediaplus.com/2010/06/richmediaplus-controls-pager/' rel='bookmark' title='richmediaplus.controls.Pager'>richmediaplus.controls.Pager</a></li>
<li><a href='http://blog.richmediaplus.com/2009/04/create-trail-information-and-expired-date-in-actionscript3-and-flex3/' rel='bookmark' title='Create Trail Information &amp; Expired Date in ActionScript3 &amp; Flex'>Create Trail Information &#038; Expired Date in ActionScript3 &#038; Flex</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.richmediaplus.com/2010/07/richmediaplus-utils-alertutils/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>richmediaplus.controls.Pager</title>
		<link>http://blog.richmediaplus.com/2010/06/richmediaplus-controls-pager/</link>
		<comments>http://blog.richmediaplus.com/2010/06/richmediaplus-controls-pager/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 14:26:25 +0000</pubDate>
		<dc:creator>Alvin / Aedis.Ju</dc:creator>
				<category><![CDATA[ActionScript Library]]></category>
		<category><![CDATA[ActionScript3]]></category>
		<category><![CDATA[Adobe]]></category>
		<category><![CDATA[Flash]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[richmediaplus Lab]]></category>
		<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Pager]]></category>
		<category><![CDATA[richmediaplus library]]></category>
		<category><![CDATA[richmediaplus.controls.Pager]]></category>
		<category><![CDATA[分页]]></category>

		<guid isPermaLink="false">http://blog.richmediaplus.com/?p=601</guid>
		<description><![CDATA[分页的控件已经不是什么稀奇的东西，最近又重新开放了一次，所以拿出来分享。 richmediaplus.controls.Pager 基于 Box 开发而成，用 Box 的好处除了省去排版的心思之外，可以利用 Box.direction 进行一些好玩的处理方式，因此 Pager 会根据 direction 进行横排或者竖排的样式。 整个分页系统由 richmediaplus.controls.Pager 和 richmediaplus.controls.pagerClasses.PagerItem 组成。Pager 掌握着整个分页的规则和设计，PagerItem 为『页』元素，但不包括前一页，后一页，最前页，最后页。整个开发习惯是为了配合由 『总页数』 count 和 当前『第 N 页』 currentPageIndex 的数据 组合成的数据，进行相应的处理。一般情况下，只需设置『总页数』 Pager.count 就可以使用，对 PagerEvent.PAGE_INDEX_CHANGED 进行监听就可以返回改变后的『页』元素的 pageIndex。当然，你可以自由得直接用 Pager.currentPageIndex 进行『页』元素的选择。 请注意，下面为几种特殊情况： 若 count 或 showCount 为 0 时，Pager 不显示。 若当前 count 为 10 条，当前选择的『页』元素为第 9 页，选择新的『页』元素第 10 页，若后台数据发生改变，count 返回为 [...]
Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2010/07/richmediaplus-utils-alertutils/' rel='bookmark' title='richmediaplus.utils.AlertUtils'>richmediaplus.utils.AlertUtils</a></li>
<li><a href='http://blog.richmediaplus.com/2009/12/netvaluechartandperformancechart/' rel='bookmark' title='基金凈值圖表(NetValueChart) &amp; 基金績效圖表(PerformanceChart)'>基金凈值圖表(NetValueChart) &#038; 基金績效圖表(PerformanceChart)</a></li>
<li><a href='http://blog.richmediaplus.com/2009/04/create-trail-information-and-expired-date-in-actionscript3-and-flex3/' rel='bookmark' title='Create Trail Information &amp; Expired Date in ActionScript3 &amp; Flex'>Create Trail Information &#038; Expired Date in ActionScript3 &#038; Flex</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>分页的控件已经不是什么稀奇的东西，最近又重新开放了一次，所以拿出来分享。</p>
<p>richmediaplus.controls.Pager 基于 Box 开发而成，用 Box 的好处除了省去排版的心思之外，可以利用 Box.direction 进行一些好玩的处理方式，因此 Pager 会根据 direction 进行横排或者竖排的样式。</p>
<p>整个分页系统由 richmediaplus.controls.Pager 和 richmediaplus.controls.pagerClasses.PagerItem 组成。Pager 掌握着整个分页的规则和设计，PagerItem 为『页』元素，但不包括前一页，后一页，最前页，最后页。整个开发习惯是为了配合由 『总页数』 count 和 当前『第 N 页』 currentPageIndex 的数据 组合成的数据，进行相应的处理。一般情况下，只需设置『总页数』 Pager.count 就可以使用，对 PagerEvent.PAGE_INDEX_CHANGED 进行监听就可以返回改变后的『页』元素的 pageIndex。当然，你可以自由得直接用 Pager.currentPageIndex 进行『页』元素的选择。</p>
<p><span style="color: #ff0000;">请注意，下面为几种特殊情况：</span></p>
<ul>
<li>若 count 或 showCount 为 0 时，Pager 不显示。</li>
<li>若当前 count 为 10 条，当前选择的『页』元素为第 9 页，选择新的『页』元素第 10 页，若后台数据发生改变，count 返回为 8 条，那么选择的新『页』元素 currentPageIndex 越界（不包含小于 0 的情况），那么 Pager 自动会选择 『最后一页』，这种情况下是 <span style="color: #ff0000;">DO NOT </span>dispatch PagerEvent.PAGE_INDEX_CHANGED 事件的，这时候需要后台配合，在返回的同时，返回最后一页的数据，这样的话，就不用再去读取『最后一页』的数据了。</li>
</ul>
<p><a href="http://code.richmediaplus.com/Pager/PagerDemo.html" target="_blank">richmediaplus.controls.Pager Demo</a></p>
<p><a href="http://code.richmediaplus.com/Pager/srcview/index.html" target="_blank">richmediaplus.controls.Pager Source</a></p>
<p><a href="http://code.richmediaplus.com/Pager/PagerDemo.html" target="_blank"><img src="http://farm5.static.flickr.com/4138/4745391453_c1d629d466.jpg" alt="richmediaplus.controls.Pager" /></a></p>
<p>Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2010/07/richmediaplus-utils-alertutils/' rel='bookmark' title='richmediaplus.utils.AlertUtils'>richmediaplus.utils.AlertUtils</a></li>
<li><a href='http://blog.richmediaplus.com/2009/12/netvaluechartandperformancechart/' rel='bookmark' title='基金凈值圖表(NetValueChart) &amp; 基金績效圖表(PerformanceChart)'>基金凈值圖表(NetValueChart) &#038; 基金績效圖表(PerformanceChart)</a></li>
<li><a href='http://blog.richmediaplus.com/2009/04/create-trail-information-and-expired-date-in-actionscript3-and-flex3/' rel='bookmark' title='Create Trail Information &amp; Expired Date in ActionScript3 &amp; Flex'>Create Trail Information &#038; Expired Date in ActionScript3 &#038; Flex</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.richmediaplus.com/2010/06/richmediaplus-controls-pager/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AS spell checking engine Squiggly</title>
		<link>http://blog.richmediaplus.com/2009/09/as-spell-checking-engine-squiggly/</link>
		<comments>http://blog.richmediaplus.com/2009/09/as-spell-checking-engine-squiggly/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 02:22:14 +0000</pubDate>
		<dc:creator>Alvin / Aedis.Ju</dc:creator>
				<category><![CDATA[ActionScript Library]]></category>
		<category><![CDATA[Squiggly]]></category>

		<guid isPermaLink="false">http://blog.richmediaplus.com/?p=356</guid>
		<description><![CDATA[Squiggly允許你在任何基於Flex 3文本組件上使用檢查語言的拼寫，最終的版本支持的會是flashplayer 10的運行環境。 在線演示程序 No related posts.
No related posts.]]></description>
			<content:encoded><![CDATA[<p><a href="http://labs.adobe.com/technologies/squiggly/" target="_blank">Squiggly</a>允許你在任何基於Flex 3文本組件上使用檢查語言的拼寫，最終的版本支持的會是flashplayer 10的運行環境。</p>
<p><a href="http://labs.adobe.com/technologies/squiggly/demo/" target="_blank">在線演示程序</a></p>
<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.richmediaplus.com/2009/09/as-spell-checking-engine-squiggly/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>TIFFEncoder</title>
		<link>http://blog.richmediaplus.com/2009/03/tiffencoder/</link>
		<comments>http://blog.richmediaplus.com/2009/03/tiffencoder/#comments</comments>
		<pubDate>Wed, 11 Mar 2009 02:02:11 +0000</pubDate>
		<dc:creator>Alvin / Aedis.Ju</dc:creator>
				<category><![CDATA[ActionScript Library]]></category>
		<category><![CDATA[ActionScript3]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[TIFFEncoder]]></category>

		<guid isPermaLink="false">http://blog.richmediaplus.com/?p=83</guid>
		<description><![CDATA[ActionScript 3 TIFF Encoder By Kevin Hoyt. More in ActionScript 3 TIFF Encoder in his blog. JPGEncoder &#38; PNGEncoder in as3corelib. Related posts: ActionScript and Flex optimization techniques and practices recommendation richmediaplus.utils.AlertUtils 將 Box2D Alchemy WCK 打包為 SWC 類別庫
Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2009/04/actionscript-and-flex-optimization-techniques-and-practices-recommendation/' rel='bookmark' title='ActionScript and Flex optimization techniques and practices recommendation'>ActionScript and Flex optimization techniques and practices recommendation</a></li>
<li><a href='http://blog.richmediaplus.com/2010/07/richmediaplus-utils-alertutils/' rel='bookmark' title='richmediaplus.utils.AlertUtils'>richmediaplus.utils.AlertUtils</a></li>
<li><a href='http://blog.richmediaplus.com/2011/07/box2d-wck-swc-flash/' rel='bookmark' title='將 Box2D Alchemy WCK 打包為 SWC 類別庫'>將 Box2D Alchemy WCK 打包為 SWC 類別庫</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>ActionScript 3 TIFF Encoder By <a href="http://blog.kevinhoyt.org/">Kevin Hoyt</a>.</p>
<p>More in <a title="TIFFEncoder" href="http://blog.kevinhoyt.org/2009/03/10/actionscript-3-tiff-encoder/" target="_blank">ActionScript 3 TIFF Encoder </a>in his blog.</p>
<p>JPGEncoder &amp; PNGEncoder in <a title="AS3CORELIB" href="http://code.google.com/p/as3corelib/" target="_blank">as3corelib</a>.</p>
<p>Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2009/04/actionscript-and-flex-optimization-techniques-and-practices-recommendation/' rel='bookmark' title='ActionScript and Flex optimization techniques and practices recommendation'>ActionScript and Flex optimization techniques and practices recommendation</a></li>
<li><a href='http://blog.richmediaplus.com/2010/07/richmediaplus-utils-alertutils/' rel='bookmark' title='richmediaplus.utils.AlertUtils'>richmediaplus.utils.AlertUtils</a></li>
<li><a href='http://blog.richmediaplus.com/2011/07/box2d-wck-swc-flash/' rel='bookmark' title='將 Box2D Alchemy WCK 打包為 SWC 類別庫'>將 Box2D Alchemy WCK 打包為 SWC 類別庫</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.richmediaplus.com/2009/03/tiffencoder/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TubeLoc: YouTube Player AS3 Nice Support!</title>
		<link>http://blog.richmediaplus.com/2009/02/tubeloc-youtube-player-as3-nice-support/</link>
		<comments>http://blog.richmediaplus.com/2009/02/tubeloc-youtube-player-as3-nice-support/#comments</comments>
		<pubDate>Thu, 12 Feb 2009 13:44:25 +0000</pubDate>
		<dc:creator>Alvin / Aedis.Ju</dc:creator>
				<category><![CDATA[ActionScript Library]]></category>
		<category><![CDATA[ActionScript3]]></category>
		<category><![CDATA[Youtube]]></category>
		<category><![CDATA[Youtube Player API]]></category>
		<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Tubeloc]]></category>
		<category><![CDATA[Youtube API]]></category>

		<guid isPermaLink="false">http://blog.richmediaplus.com/?p=35</guid>
		<description><![CDATA[差不多一年前 YouTube APIs and Tools team 發布了 YouTube Player API ，另人遺憾的是在對ActionScript2良好的支持上，卻對現在最流行的ActionScript3的支持并不友好，特別是對新手來說，處理AS3和AS2直接的交互和Youtube Player的控制會比較復雜。 TubeLoc 是 Ben Longoria 寫的一個AS2 YouTube Player API的AS3/Flex Proxy Library，你可以非常簡單容易的把Youtube Video加入到你的AS3/Adobe Flex/Adobe Air/AsWing工程當中，真正做到Nice Support！ 支持目前最流行的AS3/Adobe Flex/Adobe Air/AsWing 包含了一個Flex Component(Movie.as)和一個基于Sprite的ActionScript3 Class(MovieSprite.as) 支持YouTube Chromeless Player 和 Full-Chrome Player 使用LocalConnection 具體請看： TubeLoc in Google Code TubeLoc in YouTube APIs and Tools  Related posts: YouTube Chromeless Player API 正式支持 ActionScript 3 如何更新 [...]
Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2009/11/youtube-chromeless-player-api-support-actionscript-3/' rel='bookmark' title='YouTube Chromeless Player API 正式支持 ActionScript 3'>YouTube Chromeless Player API 正式支持 ActionScript 3</a></li>
<li><a href='http://blog.richmediaplus.com/2011/08/update-flash-ide-auth-player/' rel='bookmark' title='如何更新 Flash CS5.5 內建除錯 Player'>如何更新 Flash CS5.5 內建除錯 Player</a></li>
<li><a href='http://blog.richmediaplus.com/2011/09/nested-mask-crash-issue/' rel='bookmark' title='巢狀遮罩造成 Flash Player 死機的 Bug'>巢狀遮罩造成 Flash Player 死機的 Bug</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>差不多一年前 <a href="http://apiblog.youtube.com/">YouTube APIs and Tools team</a> 發布了 <a href="http://code.google.com/apis/youtube/flash_api_reference.html">YouTube Player API</a> ，另人遺憾的是在對ActionScript2良好的支持上，卻對現在最流行的ActionScript3的支持并不友好，特別是對新手來說，處理AS3和AS2直接的交互和Youtube Player的控制會比較復雜。</p>
<p><a title="TubeLoc" href="http://code.google.com/p/tubeloc/" target="_blank">TubeLoc</a> 是 <a href="http://enefekt.com/sansbrowser/" target="_blank">Ben Longoria</a> <span class="byline">寫的一個AS2 YouTube Player API的AS3/Flex Proxy Library，你可以非常簡單容易的把Youtube Video加入到你的AS3/Adobe Flex/Adobe Air/AsWing工程當中，真正做到Nice Support！</span></p>
<ul>
<li><span class="byline">支持目前最流行的AS3/Adobe Flex/Adobe Air/AsWing</span></li>
<li><span class="byline">包含了一個Flex Component(Movie.as)和一個基于Sprite的ActionScript3 Class(MovieSprite.as)</span></li>
<li><span class="byline">支持YouTube Chromeless Player 和 Full-Chrome Player</span></li>
<li><span class="byline">使用LocalConnection</span></li>
</ul>
<p>具體請看：<br />
<a title="TubeLoc" href="http://code.google.com/p/tubeloc/" target="_blank">TubeLoc in Google Code</a><br />
<a href="http://code.google.com/intl/zh-CN/apis/youtube/articles/tubeloc.html">TubeLoc in YouTube APIs and Tools </a></p>
<p>Related posts:<ol>
<li><a href='http://blog.richmediaplus.com/2009/11/youtube-chromeless-player-api-support-actionscript-3/' rel='bookmark' title='YouTube Chromeless Player API 正式支持 ActionScript 3'>YouTube Chromeless Player API 正式支持 ActionScript 3</a></li>
<li><a href='http://blog.richmediaplus.com/2011/08/update-flash-ide-auth-player/' rel='bookmark' title='如何更新 Flash CS5.5 內建除錯 Player'>如何更新 Flash CS5.5 內建除錯 Player</a></li>
<li><a href='http://blog.richmediaplus.com/2011/09/nested-mask-crash-issue/' rel='bookmark' title='巢狀遮罩造成 Flash Player 死機的 Bug'>巢狀遮罩造成 Flash Player 死機的 Bug</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://blog.richmediaplus.com/2009/02/tubeloc-youtube-player-as3-nice-support/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

