flex 型が見つからないか、コンパイル時定数ではありません。

2011/07/15

「ComboBox」をカスタムコンポーネントってヤツにしていったら現れたエラーが下記。

1046: 型が見つからないか、コンパイル時定数ではありません : ArrayCollection。

解決方法としては下記

「import mx.collections.ArrayCollection;」を追加。

メモ

カスタムコンポーネントってヤツを知ったので、あちこちで使っている「ComboBox」を置換えしていってた。

途中まではエラーも無く順調だったのに現れたのが上述のエラー。

何をどう調べたら良いかもわからないので…聞いてみた。

「s:Application」の「fx:script」の外で「ArrayCollection」を使っていたからも今までは問題なかった。
でも、カスタムコンポーネントを使うことによって、「s:Application」の「fx:script」の外で「ArrayCollection」が使われなくなった。
それが原因。

対応としては「fx:script」の中で「ArrayCollection」を使える設定が必要。
具体的には「import mx.collections.ArrayCollection;」。

ってな感じで解決してくれた。

「import~」って入力が面倒だったら「fx:script」の中で「new ArrayCollection;」を記載すれば勝手に「import mx.collections.ArrayCollection;」が補完される。

作業時のソース

元のソース

カスタムコンポーネントを使う前。

  1. <s:Application ~>
  2.   <fx:Script>
  3.     private function changedSelectComboBox(ac:ArrayCollection, value:String):int
  4.     {
  5.       ~~~
  6.     }
  7.   </fx:Script>
  8.   <fx:Declarations>
  9.   </fx:Declarations>
  10.   <s:ComboBox>
  11.     <s:dataProvider>
  12.       <s:ArrayCollection>
  13.         <s:source>
  14.           <fx:Object label="1" data="1" />
  15.           <fx:Object label="0" data="0" />
  16.         </s:source>
  17.       </s:ArrayCollection>
  18.     </s:dataProvider>
  19.   </s:ComboBox>
  20. </s:Application>

エラーが出たソース

「s:ComboBox」をカスタムコンポーネントにしてみたら、エラーが出た。
※「s:ArrayCollection」が消えたのがエラーの原因かな。

  1. <s:Application ~>
  2.   <fx:Script>
  3.     private function changedSelectComboBox(ac:ArrayCollection, value:String):int
  4.     {
  5.       ~~~
  6.     }
  7.   </fx:Script>
  8.   <fx:Declarations>
  9.   </fx:Declarations>
  10.   <local:cpComboBox />
  11. </s:Application>

修正ずみソース

  1. <s:Application ~>
  2.   <fx:Script>
  3.     import mx.collections.ArrayCollection;
  4.     private function changedSelectComboBox(ac:ArrayCollection, value:String):int
  5.     {
  6.       ~~~
  7.     }
  8.   </fx:Script>
  9.   <fx:Declarations>
  10.   </fx:Declarations>
  11.   <local:cpComboBox />
  12. </s:Application>

新着(ニュース関連以外)

2018-07-26
年賀状で「新春」とか書くけど・・・何故なんだろうと8月を目前にした今、疑問に思った。
2018-05-16
PHPで画像のヘッダ情報(?)の「Orientation」を元に画像回転させたい。
2018-03-05
Android Studioをインストール。エミュレータを軽くするトコまで終わらせたかったけど、挫折した。
2018-02-23
プッシュ通知について調べてた時にでてきたServiceWorker。そのServiceWorkerについてのメモ。
2017-12-13
jqueryで取得したDOM要素をオブジェクトじゃなくて、配列で受け取りたい