ViewStack children are not instantiated(do not exist) until they are explicitly navigated to. Avoid creationPolicy="all" whenever possible.
Tracy --- In [email protected], "Phil Krasko" <[EMAIL PROTECTED]> wrote: > > Actually now that I look the snippet I wrote was wrong. I have my indices starting at 0 and go to 2. > > The block if index == 2 executes and I still can't access application.com3mgetData() unless there is a delay involved. > > How would the creation policy effect this? > > > Sent via BlackBerry from T-Mobile > > -----Original Message----- > From: "Dealy, Brian" [EMAIL PROTECTED] > > Date: Sun, 3 Feb 2008 12:34:58 > To:[email protected] > Subject: RE: [flexcoders] Re: Object is Null? How can it be if it's a component in main.mxml. No access > > > Viewstack's children index is zero based, so you need to start at zero and go to two > > > if(indexHit == 0){ > > Application.application.com1.getData(); > > }else if(indexHit==1){ > > Application.application.com2.getData(); > > }else if(indexHit==2){ > > //THIS FAILS > > Application.application.com3.getData(); > > }else{ > > //nothing > > } > > > I hope this helps! > regards, > brian > > > > Brian Dealy > Vice President - Technology > SAIC Technical Fellow > Science Application International Corp. > San Diego, CA > > > > > > > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Damien Legros > Sent: Sunday, February 03, 2008 3:45 AM > To: [email protected] > Subject: [flexcoders] Re: Object is Null? How can it be if it's a component in main.mxml. No access > > > > > Check the viewstack creationPolicy property :) > > --- In [EMAIL PROTECTED] <mailto:flexcoders%40yahoogroups.com> ups.com, "phipzkillah" phil@ wrote: > > > > I have a toggle bar that's data provider is a viewstack. > > When I click on the toggle bar an event is dispatched that my controller > > is listening for. > > > > My controller can access com1, com2, but always gives me a null pointer > > exception on com3. > > All components are identical. > > > > I just wrote this off the top of my head. So syntax might be off a bit > > and I only included the core functionality stripped down to demonstrate > > my issue. > > > > Any thoughts? > > > > > > Main.mxml > > //script > > import CustomClass(); > > > > protected var controller:CustomClass; > > private function init():void{ > > controller = new CustomClass(); > > } > > > > //body > > <togglebar click="controller.doSomething(event)" dataprovider="vs1"/> > > > > <viewstack id="vs1"> > > <com1: id="com1"/> > > <com2: id="com2"/> > > <com3: id="com3"/> > > </viewstack> > > > > CustomClass.as > > //Controller > > > > public function doSomething(event:ItemClickEvent):void{ > > var indexHit:int = event.index; > > if(indexHit == 1){ > > Application.application.com1.getData(); > > }else if(indexHit==2){ > > Application.application.com2.getData(); > > }else if(indexHit==3){ > > //THIS FAILS > > Application.application.com3.getData(); > > }else{ > > //nothing > > } > > } > > >

