2012-04-11 13 views
0

私のinit()メソッドでボタンを使用しようとしています。フレックスエラー#1009:nullオブジェクト参照のプロパティまたはメソッドにアクセスできません

<?xml version="1.0" encoding="utf-8"?> 
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009" 
     xmlns:s="library://ns.adobe.com/flex/spark" title="Test" 
     creationComplete="init()"> 

私のボタンで何かをしようとすると、エラーが表示されます。私はそれがまだロードされていない可能性がありますか?

function init():void{ 
    myButton.thisorthat == makes the error. 
} 

* EDIT ** ボタンがところで ないことが重要というMXMLで作成したが、これはフレックスモバイルアプリのためです。

答えて

3

実際にはとなります。 NavigatorContent(あなたの子供がこれらのタイプのコンテナのサブセットであると仮定)の1つは、ハローの対応と一緒に覚えておくべきことは、すべてコンテンツ作成ポリシーが遅延に設定されていることです。つまり、ビュー/ユーザーがその特定の子に実際にナビゲートするまで、それは子供ではありません。 1 チートは、ポリシーを 'ALL'に設定することですが、実際にはFlexEvent.CONTENT_CREATION_COMPLETE(これはナビゲーションコンテナの子からブロードキャストされます)を実際に聴くことをお勧めします。

例:

<halo:ViewStack id="setupStack" width="100%" height="100%"> 
    <api:FileSelector width="100%" height="100%" owner="{this}" 
         enumerationMode="{FileSystemEnumerationMode.DIRECTORIES_ONLY}" 
         hint="{networkDbAccessHint}" /> 
    <!- this is valid, but not it's children until contentCreateComplete is fired --> 
    <api:DataImport width="100%" height="100%" owner="{this}" /> 
</halo:ViewStack> 

両方 'FileSelector' と 'DataImport' ブロードキャストイベント(複数可延び:NavigatorContent)。

+0

ありがとうございました。 – james

関連する問題