Nope. I confirmed what you are seeing but couldn't figure out why in the limited time I had to look at it.
I am going to have to defer to someone more knowledgeable. --- In [email protected], Pan Troglodytes <chimpathe...@...> wrote: > > No ideas on this one? > > On Wed, Jun 17, 2009 at 12:00 PM, Pan Troglodytes <chimpathe...@...>wrote: > > > I have a test program that, as far as I can tell, does the same thing using > > an MXML component and the equivalent actionscript. When I click on the > > button to execute the AS version, everything is fine. But when I click on > > the button to execute the MXML version, I get a layout flicker. It's bad > > enough that if you try to click on the MXML button over and over really > > fast, you'll wind up clicking the main app and the menu will go away. > > Here's the code: > > > > > > <?xml version="1.0" encoding="utf-8"?> > > <Application > > xmlns="http://www.adobe.com/2006/mxml" > > layout="absolute" > > > > > <Script> > > <![CDATA[ > > import mx.containers.GridItem; > > import mx.controls.Label; > > import mx.controls.DateField; > > private function addCategoryAS():void > > { > > var gi:GridItem; > > var gr:GridRow = new GridRow; > > > > gi = new GridItem; > > gr.addChild(gi); > > gi.addChild(new Label); > > > > addRow(gr); > > } > > > > private function addCategoryMXML():void > > { > > var gr:GridRow = new TestGridRow; > > gr.initialize(); // this is just to try to make it equivalent - > > doesn't change flicker > > > > addRow(gr); > > } > > > > private function addRow(gr:GridRow):void > > { > > grid.addChildAt(gr, 0); > > > > var gi:GridItem; > > > > gi = gr.getChildAt(0) as GridItem; > > (gi.getChildAt(0) as Label).text = "item " + grid.numChildren + > > ":"; > > > > gr.validateSize(true); > > var verticalGap:Number = grid.getStyle("verticalGap"); > > popup.scrollRect = new Rectangle(0, 0, Math.max(popup.width + > > gr.measuredWidth), > > popup.height + gr.measuredHeight + (isNaN(verticalGap) ? 0 : > > verticalGap)); > > if (popup.localToGlobal(new Point(0, 0)).y < > > popup.owner.localToGlobal(new Point(0, 0)).y) > > popup.y -= gr.measuredHeight + (isNaN(verticalGap) ? 0 : > > verticalGap); > > } > > ]]> > > </Script> > > > > <Canvas bottom="0"> > > <PopUpButton id="myPopupButton" openAlways="true"> > > <popUp> > > <Canvas id="popup"> > > <Grid id="grid" paddingTop="4" paddingBottom="4" paddingLeft="4" > > paddingRight="4" > > fontSize="12" backgroundColor="0xFFFFFF" borderStyle="outset" > > borderThickness="2" > > > > > <GridRow> > > <GridItem> > > <Button label="Add AS" click="addCategoryAS()"/> > > <Button label="Add MXML" click="addCategoryMXML()"/> > > </GridItem> > > </GridRow> > > </Grid> > > </Canvas> > > </popUp> > > </PopUpButton> > > </Canvas> > > </Application> > > > > TestGridRow.mxml: > > <?xml version="1.0" encoding="utf-8"?> > > <GridRow xmlns="http://www.adobe.com/2006/mxml"> > > <GridItem> > > <Label/> > > </GridItem> > > </GridRow> > > > > > > I've dug through the generated code and have not been able to find anything > > that I think would account for the problem. This is frustrating, because > > what I really want to do is a more complicated MXML component to make it a > > lot nicer to add rows in my addCategory function. But I can't as long as > > it's going to be so jittery. > > > > Thanks! > > > > -- > > Jason > > > > > > -- > Jason >

