<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
   <title>godagoda.net</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/" />
   <link rel="self" type="application/atom+xml" href="http://www.godagoda.net/blog/atom.xml" />
   <id>tag:www.godagoda.net,2010:/blog//1</id>
   <updated>2010-09-02T16:59:04Z</updated>
   
   <generator uri="http://www.sixapart.com/movabletype/">Movable Type 3.33-ja</generator>

<entry>
   <title>Flex4メモ：：Scroller</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2010/09/flex4scroller.html" />
   <id>tag:www.godagoda.net,2010:/blog//1.40</id>
   
   <published>2010-09-02T16:03:50Z</published>
   <updated>2010-09-02T16:59:04Z</updated>
   
   <summary> Flex3(mx)でスクロールバーを表示したい場合には、ContainerやC...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="Flex" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="7" label="flex" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="87" label="scroller" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="82" label="spark" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
<p>Flex3(mx)でスクロールバーを表示したい場合には、<a href="http://help.adobe.com/ja_JP/AS3LCR/Flex_4.0/mx/core/Container.html" target="_blank">Container</a>やContainerを継承した<a href="http://help.adobe.com/ja_JP/AS3LCR/Flex_4.0/mx/containers/Canvas.html" target="_blank">Canvas</a>の中に適当にコンポーネントを配置しておけば、Containerが子供コンポーネントのサイズや位置を計測して勝手にスクロールバーを表示してくれていましたが、Flex4(spark)でスクロールバーを表示したい場合、明示的に<a href="http://help.adobe.com/ja_JP/AS3LCR/Flex_4.0/spark/components/Scroller.html" target="_blank">Scroller</a>コンポーネントを配置してあげる必要があります。</p>
<p>Scrollerには、<a href="http://help.adobe.com/ja_JP/AS3LCR/Flex_4.0/spark/core/IViewport.html" target="_blank">IViewPort</a>を実装したコンポーネントを一つだけ配置できます。このIViewPortを実装しているのは、GroupとRichTextEditorだけなので、Groupを一つ配置すると思っておけばよいのではないでしょうか。</p>
<p>mxmlは下記のようになります。<p>
<div class="source">
<pre><code>&lt;s:Scroller x="0" y="0"  width="200" height="200"&gt;
  &lt;s:Group&gt;
    &lt;s:layout&gt;
      &lt;s:BasicLayout /&gt;&#9;
    &lt;/s:layout&gt; 
  &lt;/s:Group&gt;
&lt;/s:Scroller&gt;</code></pre>
</div>
<p>この場合子供のコンポーネントが表示領域が200pxを超える場合、スクロールバーが表示されます。<p>
<p>Flex3(mx)でおなじみの、verticalScrollPolicyとhorizontalScrollPolicyもScrollerクラスにあります。autoで自動表示、onが強制表示でoffが常に非表示になります。clipContentが見あたらなかったので、verticalScrollPolicyとhorizontalScrollPolicyを両方offにしろということでしょうか。<p>
<p>この記事を書いている時に、<a href="http://www.adobe.com/jp/devnet/flex/articles/flex4_viewport_scrolling_04.html" target="_blank">Flexデベロッパセンターに完璧な記事</a>を発見したので、これを読んだほうが手っ取り早いですね。<p>
</div>]]>
      
   </content>
</entry>
<entry>
   <title>Flex4メモ：：ItemRenderer</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2010/09/flex4itemrenderer.html" />
   <id>tag:www.godagoda.net,2010:/blog//1.39</id>
   
   <published>2010-08-31T16:50:45Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary>   Flex3では、自作のitemrendererといえばCanvasなどを継...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="Flex" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="85" label="Flex4" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="86" label="itemrenderer" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="82" label="spark" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
  <p>Flex3では、自作のitemrendererといえばCanvasなどを継承したクラスで作るのが定石だと思いますが、Flex4(spark)ではそのものずばり<a href="http://help.adobe.com/ja_JP/AS3LCR/Flex_4.0/spark/components/supportClasses/ItemRenderer.html" target="_blank">Itemrenderer</a>クラスってのが用意されているので、自作のitemrendererを作る時はこれを継承してあげればよいっぽいです。</p>
<p>Itemrendererは<a href="http://help.adobe.com/ja_JP/AS3LCR/Flex_4.0/spark/components/DataRenderer.html" target="_blank">DataRenderer</a>を継承し、<a href="http://help.adobe.com/ja_JP/AS3LCR/Flex_4.0/spark/components/IItemRenderer.html" target="_blank">IItemRenderer</a>を実装しています。</p>
<p>で、DataRendererは<a href="http://help.adobe.com/ja_JP/AS3LCR/Flex_4.0/mx/core/IDataRenderer.html" target="_blank">IDataRenderer</a>を実装していて、これにお決まりのset dataとget dataが定義されています。</p>
<p>ちなみに<a href="http://help.adobe.com/ja_JP/AS3LCR/Flex_4.0/spark/components/List.html" target="_blank">List</a>のitemrendererに設定できるのは、このIDataRendererを実装しているものだけです。
<p>ざっと使ってみた感じでは、Flex3と同じノリで、crateChildrenだのset dataだのcommitPropertiesだのをがしがしオーバーライドしていく感じで大丈夫だと思われます。</p>
</div>]]>
      
   </content>
</entry>
<entry>
   <title>Flex4メモ：：sparkではaddChildが使えない</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2010/08/flex4.html" />
   <id>tag:www.godagoda.net,2010:/blog//1.38</id>
   
   <published>2010-08-30T17:24:37Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> spark系のコンポーネントではaddChildは使えないようです。 Skin...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="Flex" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="83" label="Flex" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="85" label="Flex4" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="82" label="spark" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
<p>spark系のコンポーネントではaddChildは使えないようです。</p>
<p>SkinnableComponentでもGroupでも下記のようにErrorをスローするようにoverrideされてます。</p>
<div class="source">
<pre><code>/**
*  @private
*/
override public function addChild(child:DisplayObject):
DisplayObject
{
    throw(new Error(resourceManager.getString("components", 
"addChildError")));
}</code></pre>
</div>
<p>じゃあどうするか。</p>
<p>かわりにaddElementってのを使うことになります。</p>
<p>addChild→addElement</p>
<p>その他は、<p>
<p>addChildAt→addElementAt</p>
<p>removeChild→removeElement</p>
<p>なんかがあります。</p>
<p詳しくは、<a href="http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf62b90-7fe9.html">ここ</a>にmxとspakrの子供の管理方法の違いが載ってます。</p>

</div>]]>
      
   </content>
</entry>
<entry>
   <title>Flex4メモ：：ぼんやり継承関係の確認</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2010/08/flex4_1.html" />
   <id>tag:www.godagoda.net,2010:/blog//1.37</id>
   
   <published>2010-08-24T16:08:40Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> Group → GroupBase → UIComponent GroupBa...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="Flex" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="7" label="flex" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="82" label="spark" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">

Group → GroupBase → UIComponent

GroupBase has _layout:LayoutBase

SkinnableContainer(contentGroup:Group) → SkinnableContainerBase → SkinnableComponent → UIComponent

List → ListBase → SkinnableDataContainer (dataGroup:DataGroup IItemRendererOwner) → SkinnableContainerBase → SkinnableComponent → UIComponent

</div>]]>
      
   </content>
</entry>
<entry>
   <title>本日のiPhoneアプリ開発メモ~selfと@property~</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2010/04/objectivec.html" />
   <id>tag:www.godagoda.net,2010:/blog//1.36</id>
   
   <published>2010-04-28T17:09:48Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary>@property(retain)指定したプロパティをそのクラス自身で使う場合、...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="iPhoneアプリ開発" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="79" label="Objective-C" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="17" label="as3" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="21" label="flash" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="81" label="iPhone" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      @property(retain)指定したプロパティをそのクラス自身で使う場合、（セッタ、ゲッタでもいいけど）
(NSString *)hoge = (NSString *)fuge;
としても、fugeのretainCountは増えない。
self.hoge = fuge;
とすれば増える。
selfを明示的に記述して&quot;ドット&quot;でアクセスする必要あり。
      
   </content>
</entry>
<entry>
   <title>フルスクリーン時にFLVPlaybackが出現するとブラウザがクラッシュする</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2010/03/flvplayback.html" />
   <id>tag:www.godagoda.net,2010:/blog//1.35</id>
   
   <published>2010-03-01T08:33:14Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> 最近の案件でフルスクリーン時のFLVPlaybackにはまったのでメモ。 ■現...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="FLASH" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="36" label="FLVPlayback" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="77" label="crash" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="21" label="flash" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="74" label="fullscreen" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="75" label="クラッシュ" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="76" label="フルスクリーン" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
最近の案件でフルスクリーン時のFLVPlaybackにはまったのでメモ。<br>

■現象
フルスクリーン時にFLVPlaybackが出現するとブラウザがクラッシュする。

■詳細
フルスクリーン時にタイムラインアニメーションなどで途中からステージにFLVPlaybackが出現すると高確率でブラウザがクラッシュする。
FLVPlaybackが出現してからフルスクリーンにすると大丈夫。

■対応策
1フレーム目から（フルスクリーンにした時から）FLVPlaybackが存在していれば大丈夫。
外部swfをロードした場合も同様に1フレーム目からFlvPlaybackが存在していれば大丈夫。

■原因
↓なエラーを出しているが、不明。
警告 : 宣言されていない変数を参照しています 'FullScreen_MC'
警告 : 'FullScreen_MC' にはプロパティ 'FullScreen_text' がありません
警告 : 'FullScreen_text' にはプロパティ 'text' がありません

※ちなみに、FLVPlaybackがある状態でフルスクリーンにすると、前面FLVPlaybackになってしまします。
これを回避するには、
<div class="source">FLVPlayback(instance).fullScreenTakeOver = false;</div>
fullScreenTakeOver プロパティーをfalseにしてあげれば大丈夫です。

</div>]]>
      
   </content>
</entry>
<entry>
   <title>FlashPlayr10.1でwmode=transparentでの日本語入力問題が解決したらしい</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2009/10/flashplayr101wmodetransparent.html" />
   <id>tag:www.godagoda.net,2009:/blog//1.34</id>
   
   <published>2009-10-28T16:00:12Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> via.Adobe Edge ※下の方にある日本のユーザー向けの改善点のとこ。...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="FLASH" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="72" label="flashplayer10.1" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="73" label="wmode" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="70" label="日本語入力" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
<a href="http://www.adobe.com/jp/newsletters/edge/october2009/Fcontent/index.html" target="_blank">via.Adobe Edge</a>
<br>※下の方にある日本のユーザー向けの改善点のとこ。
</div>]]>
      
   </content>
</entry>
<entry>
   <title>15jyugo</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2009/10/15jyugo_1.html" />
   <id>tag:www.godagoda.net,2009:/blog//1.33</id>
   
   <published>2009-10-22T16:18:36Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> 代官山にあるjyugoというブランドのサイトをお手伝いさせてもらいました。 と...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="その他" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="69" label="15" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="68" label="jyugo" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
代官山にあるjyugoというブランドのサイトをお手伝いさせてもらいました。<br>
というか一方的に作らせてもらいました。<br><br>素敵な洋服＆お店なので是非行ってみてください。<br><a href="http://www.15jyugo.com/" target="_blank">jyugo</a>
</div>]]>
      
   </content>
</entry>
<entry>
   <title>c言語でのfor文</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2009/06/cfor.html" />
   <id>tag:www.godagoda.net,2009:/blog//1.32</id>
   
   <published>2009-06-23T16:33:51Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> c言語ではfor文のfor()内でカウント用変数を宣言すると怒られる。 for...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="c" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="65" label="c" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="67" label="c言語" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="66" label="for" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
c言語ではfor文のfor()内でカウント用変数を宣言すると怒られる。<br>
<div class="source">for(int i = 0; i < 10; i++ )</div>
↑はエラー。
<br>
<div class="source">int i;<br>
for(i = 0; i < 10; i++ )</div>
↑正解。
<br><br>以上。
</div>]]>
      
   </content>
</entry>
<entry>
   <title>PaperVIsionメモ</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2009/04/papervision.html" />
   <id>tag:www.godagoda.net,2009:/blog//1.31</id>
   
   <published>2009-04-27T17:09:19Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> bitmapMaterialのコンストラクタの引数には、BitmapDataを...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="FLASH" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="64" label="flash papervision BitmapMaterial" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
bitmapMaterialのコンストラクタの引数には、BitmapDataを与えてあげる。
<div class="source">
[Embed(source="assets/tree.png")]
public var imgCls:Class;

var bma:BitmapAsset = new imgCls();
var bitmapMaterial:BitmapMaterial = new BitmapMaterial(bma.bitmapData);
</div>
BitmapのプロパティのbitmapDataを渡してやる。（ver2.0.0)
あと、SWFProfiler便利。
<div class="source">
SWFProfiler.init(this);
</div>
以上。簡単。
</div>]]>
      
   </content>
</entry>
<entry>
   <title>Panelコンポーネントのalpha値</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2009/04/panelalpha.html" />
   <id>tag:www.godagoda.net,2009:/blog//1.30</id>
   
   <published>2009-04-25T16:01:06Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> タイトルバー、コントロールバー、および Panel の両側のアルファ値を設定す...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="Flex" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="7" label="flex" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
タイトルバー、コントロールバー、および Panel の両側のアルファ値を設定するには、スタイルで”borderAlpha”を設定してあげる。ちなみにデフォ値は、.4。
</div>]]>
      
   </content>
</entry>
<entry>
   <title>今日の日付のディレクトリを作るスクリプト</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2009/03/post_7.html" />
   <id>tag:www.godagoda.net,2009:/blog//1.29</id>
   
   <published>2009-03-27T17:05:08Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> #!/bin/bash myPath=&apos;/Users/hoge/study/&apos;...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="bash" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="62" label="bash" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
<div class="source"><pre><code>#!/bin/bash
myPath='/Users/hoge/study/'
today=`date +%Y-%m-%d`
if [ -d $myPath$today ]
then
     echo "$myPath$today exist!!"
else
     mkdir $myPath$today
     echo "create $today"
fi
</code></pre></div>
</div>]]>
      
   </content>
</entry>
<entry>
   <title>へっぽこFlasherのOpenGL勉強その1</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2009/03/flasheropengl1.html" />
   <id>tag:www.godagoda.net,2009:/blog//1.28</id>
   
   <published>2009-03-19T17:04:29Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> なんとなくOpenGLを勉強してみようと思ったので、勉強した事をメモメモ。 ■...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="OpenGL" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="61" label="OpenGL" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="21" label="flash" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
なんとなくOpenGLを勉強してみようと思ったので、勉強した事をメモメモ。<br/>
■環境<br/>
Mac OS X 10.5.6(Intel)</br>

■今日の目標：500X500の背景色が黒のウィンドウを画面左上に開く（あんまりOpenGLと関係なし。。。）<br/>
以下ソース。
<div class="source"><pre><code>#include&lt;GLUT/glut.h&gt;
#define ESC_KEY 27
void display(void){
     glClear(GL_COLOR_BUFFER_BIT);
     glFlush();
 }
 void myKbd(unsigned char key , int x , int y ){
     if(key == ESC_KEY){
         exit(0);
     }
 }

 void myInit(char *progname){
     int width = 500;
     int height = 500;
     glutInitWindowPosition(0,0);
     glutInitWindowSize(width,height);
     glutInitDisplayMode(GLUT_RGBA);
     glutCreateWindow(progname);
     glClearColor(0,0,0,1);
     glutKeyboardFunc(myKbd);
 }
 
 int main(int argc ,char** argv){
     glutInit(&argc,argv);
     myInit(argv[0]);
     glutDisplayFunc(display);
     glutMainLoop();
     return(0);
 }</code></pre></div>
<b>■ウィンドウ表示までのプロセス</b><br/>
•glutInit()関数で<a href="http://opengl.jp/glut/section01.html" target="_blank">glut</a>(OpenGLをいい感じにまとめてるもの)†を初期化<br/>
•glutInitWindowPosition()関数でウィンドウの位置指定<br/>
•glutInitWindowSize()関数でウィンドウのサイズ指定<br/>
•glutInitDisplayMode()関数でウィンドウのカラーモードをRGBAに設定<br/>
•glutCreateWindow()関数でウィンドウ作成<br/>
•glClearColor()関数でウィンドウのRGBA値を設定<br/>
•glutKeyboardFunc()関数でキーイベントのコールバック関数を登録（escキーが押されたらウィンドウを閉じる）<br/>
•glutDisplayFunc()関数で描画コールバック関数を登録<br/>
•glutMainLoop()でイベントの待ち状態に<br/>
•display()が実行される<br/>
•glClear()関数でウィンドウの背景色を塗りつぶす<br/>
•glFlush()関数で強制描画
<div class="source">gcc -framework OpenGL -framework GLUT test01.c
</div>
</div>]]>
      
   </content>
</entry>
<entry>
   <title>flashvars取得</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2009/03/flashvars.html" />
   <id>tag:www.godagoda.net,2009:/blog//1.27</id>
   
   <published>2009-03-04T02:18:39Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> AS3でのflashvars取得方法メモ。 FlashCS3では、タイムライン...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="AS3" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="21" label="flash" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="59" label="flashvars" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="7" label="flex" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
AS3でのflashvars取得方法メモ。<br><br>
FlashCS3では、タイムラインもしくはドキュメントクラスの、
<div class="source">
loaderInfo.parameters
</div>
<br>
Flexでは、
<div class="source">
Application.application.parameters
</div>
</div>]]>
      
   </content>
</entry>
<entry>
   <title>Vectorクラスメモ</title>
   <link rel="alternate" type="text/html" href="http://www.godagoda.net/blog/2009/02/vector.html" />
   <id>tag:www.godagoda.net,2009:/blog//1.26</id>
   
   <published>2009-02-16T15:00:52Z</published>
   <updated>2010-09-02T16:44:04Z</updated>
   
   <summary> FlashPlayer10から追加されたクラスに、Vectorというものがあり...</summary>
   <author>
      <name></name>
      
   </author>
         <category term="AS3" scheme="http://www.sixapart.com/ns/types#category" />
   
   <category term="58" label="as3 actionscript3 flash flex vector" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="ja" xml:base="http://www.godagoda.net/blog/">
      <![CDATA[<div class="myContent">
FlashPlayer10から追加されたクラスに、Vectorというものがあります。
Vectorクラスというのは、型の指定ができるArray（配列）クラスみたいなもので、Arrayより高速に処理できるそうです。
実際、VectorクラスはArrayクラスの全てのメソッドを実装しています。<br>
Vectorクラスのインスタンスは下記のような感じで作成します。
<div class="source">
import __AS3__.vec.Vector;<br>
var vector:Vector.<型> = new Vector.<型>();
</div>
Vectorのコンストラクタには、
<div class="source">
Vector(length:uint = 0, fixed:Boolean = false)
</div>
という2つの引数があります。<br>
1つめの1engthは、初期化時に何個の要素を保持するかを指定します。<br>
2つめのfixedは、1つめの引数にベクターの長さが固定されるか（true）、または変更できるか（false）を指定します。

Arrayには無い便利なメソッドとして、
•every(callback:Function, thisObject:Object = null):Boolean
指定された関数について false を返すアイテムに達するまで、ベクター内の各アイテムにテスト関数を実行します。
<div class="source">var vector:Vector.<int> = new Vector.<int>();
vector.push(0);
vector.push(1);
vector.push(2);
vector.push(3);
vector.push(4);
vector.every(everyTest);

function everyTest(item:int, index:int, vector:Vector.<int>):Boolean{
	if(item < 2){
		trace("item:"+item);
		trace("index:"+index);
		return true;
	}
	return false;
}
//trace結果
item:0
index:0
item:1
index:1
</div>
•filter(callback:Function, thisObject:Object = null):Vector.<T>
ベクター内の各アイテムについてテスト関数を実行し、指定された関数について true を返すすべてのアイテムを含む新しいベクターを返します。
<div class="source">var vector:Vector.<int> = new Vector.<int>();
vector.push(0);
vector.push(1);
vector.push(2);
vector.push(3);
vector.push(4);
vector.every(filterTest);

function filterTest(item:int, index:int, vector:Vector.<int>):Boolean{
	if(item < 2){
		trace("item:"+item);
		trace("index:"+index);
		return true;
	}
	return false;
}
//trace結果
item:0
index:0
item:1
index:1
</div>
•forEach(callback:Function, thisObject:Object = null):void
ベクター内の各アイテムについて関数を実行します。
<div class="source">var vector:Vector.<int> = new Vector.<int>();
vector.push(0);
vector.push(1);
vector.push(2);
vector.push(3);
vector.push(4);
vector.every(forEachTest);

function forEachTest(item:int, index:int, vector:Vector.<int>):void{
	trace("item:"+item);
	trace("index:"+index);
}
//trace結果
item:0
index:0
item:1
index:1
item:2
index:2
item:3
index:3
item:4
index:4
</div>

なかなか使えそうです。
詳しくは、<a href="http://www.mikechambers.com/blog/2008/08/19/using-vectors-in-actionscript-3-and-flash-player-10/">Using Vectors in ActionScript 3 and Flash Player 10</a>などをご覧ください。

</div>]]>
      
   </content>
</entry>

</feed>

