As long as it's funky behavior and not my code :) But it's no biggie. It's not a client app, just a learning app. Thanks for your suggestions, I'll give them a try.
--- In flexcoders@yahoogroups.com, "Matt Chotin" <[EMAIL PROTECTED]> wrote: > Re the remaining space: I realize you have to scroll quite a bit (of > course it differed depending on the size of my window) but I wonder if > at any time the space available was actually larger than the full height > of a row. That's the key... > > > > Both your list issues are funky, wish I had some better suggestions for > you. For the TileList images maybe try setting the image source to null > and then afterward setting it to the real value? So in setValue set it > to null, then enter the if statement and set it to the real value? Or > maybe call invalidate? It should work, it's funky. Of course you could > also just load the image from the web server and assume the browser > cache will take care of it for you (turn it into a JPG or SWF instead of > a GIF). > > > > For the review list I think there's basically a bug in the > variableRowHeight code, only thing you could try is calling invalidate() > (or maybe invalidateLayout) on the List and see if it resets its content > rows? A Repeater also would do pretty well here, you could simulate the > alternating background color pretty easily by doing some simple test in > the initialize statement if event.target.getRepeaterIndex() % 2 == 0 and > setting the backgroundColor appropriately. > > > > Sorry to not be of more help, > > > > Matt > > > > ________________________________ > > From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On > Behalf Of Devin Holloway > Sent: Thursday, July 21, 2005 3:45 PM > To: flexcoders@yahoogroups.com > Subject: [flexcoders] Re: Odd behaviors with List controls > > > > Hi Matt, thanks for responding! > > It seems like you'd only have extra space in a list control if the > height of the control is greater then the combined height of all the > elements in the control. That wouldn't be the case in this example, > since you have to scroll vertically to see all the items. If you > scroll to where the last row is completely visible, you can still > keep scrolling quite a bit. > > I never did fix the second item, it's just that the steps to > reproduce it have changed. Let me first explain the criteria on what > must exist to create the bug. > > You have to have a dynamic image in a non-visible cell of the list > (due to the list being scrolled up or down). Then you reload the data > provider causing the scrolling to reset itself. Any cell that shares > the same index as the previously hidden cell, that also becomes > visible due to the resetting of the scrollbar, that also uses an > embedded image, will be affected. > > So, in my application, > http://default.devinholloway.com/flex/capoeira/, click on the "Books" > link. With my screen resolution, I can see two columns and three rows > of books (all dynamic images). With the scroll bar still at the top, > click to go to page 2. The first two rows use the embedded "no image" > icon. That's an example of it working correctly. Now click to back to > page 1 and then scroll all the way to the bottom. The first two rows > of books should be completely hidden (and hopefully you'll notice > that huge amount of leftover space that the bottom). While the scroll > bar is still at the bottom, click to go to page two. The first two > rows of books on page two, which used to show the "no image" embedded > icon, now show the same book covers that the first rows on the page 1 > does, only resized to the height of the "no image" icon. > > If you want to see happen even more, scroll down to the bottom of the > second page, you'll see that the last two products show the photos of > the last two products on page one (again resized). > > for the 4th issue, you need to be on the "books" page, then the rest > of the steps are the same. > > > --- In flexcoders@yahoogroups.com, "Matt Chotin" <[EMAIL PROTECTED]> wrote: > > Sorry it took so long to respond to this, you may have addressed > some of > > these issues already: > > > > > > > > 1) I believe the extra row is actually just leftover space in > the > > list. We don't show partial rows unless you explicitly set a count > that > > would cause the row to appear. > > > > 2) I think you've fixed this on the site as it is now? > > > > 3) This resizing might be a bug in our List class. The extra > row > > is simply because we have a minimum number of cells that need to get > > rendered to allow scrolling with variableRowHeight. > > > > 4) Since you've added more content since your post I can't > > reproduce this. > > > > > > > > Matt > > > > > > > > ________________________________ > > > > From: flexcoders@yahoogroups.com > [mailto:[EMAIL PROTECTED] On > > Behalf Of Devin Holloway > > Sent: Friday, July 15, 2005 9:07 AM > > To: flexcoders@yahoogroups.com > > Subject: [flexcoders] Odd behaviors with List controls > > > > > > > > I've been noticing a lot of odd behavior with the List and TileList > > controls. The application I'm working on is located at: > > > > http://default.devinholloway.com/flex/capoeira/ > > > > You should see the list of titles on the left hand side. If you > > scroll > > the product list all the way down, you'll see an empty row. Every > > time > > I use a list-based control, it always produces at least one extra > > empty > > row at the bottom. Is this expected behavior? > > > > Issue #2: Keep the product list scrolled to the bottom to where the > > top > > product for both tilelist columns are not visible (my browser is > > maximized at 1024x768), and then use the NumericStepper pager > control > > to jump to the second page of results. When that loads, the top > > product > > for each column should be using the "no image" book cover. But > > instead, > > they're using the same two images for the top two products on the > > first > > page of results, only resized to same height as the "no image" > icon. > > Now scroll to the bottom of the second page, and the last two > > products > > might also display the same two images rather then the "no image" > > icon. > > This is fairly consistent behavoir when flipping through pages. > > > > Issue #3: Go back to the first page and select the first product. > On > > the right hand side, select the "customer reviews" accordion pane. > > This > > list displaying these reviews have variableRowHeight and wordWrap > > turned on. When you first select the customer reviews, the list > isn't > > sized correctly. It's as if it figures out the height of the > tallest > > list item, and uses that height for all visible list items. You have > > to > > scroll up and down to get it to recalculate and get each list item > > sized correctly. You should also see one extra blank list item at > the > > bottom like I noted in the first issue. > > > > Issue #4: Now use the NumericStepper at the bottom of the reviews > to > > flip to the second page of reviews, and scroll to the bottom. The > > second page has 5 review list items, although, the scroll bar stops > > at > > the end of the third item and won't let you scroll any further. > > Sometimes if you scroll up and down, or go to another page of > reviews > > and come back, it'll let you see all of the reviews on this page. > > > > Here's the code snippets for both the lists: > > > > Product Tile List: > > > > <mx:TileList id="productList" > > dataProvider="{aws.ItemSearch.result.Items.Item}" > > cellRenderer="ProductListCellRenderer" liveScrolling="false" > > change="aws.ItemLookup.send();" width="100%" height="100%" > > itemWidth="225" itemHeight="125"/> > > > > > > Product Tile List Cell Renderer: > > > > <mx:Script> > > <![CDATA[ > > [Embed(source="images/noimg.gif")] > > var noimage:String; > > > > function setValue(str:String, item:Object, sel:String) { > > if (item==undefined) { > > visible = false; > > return; > > } else { > > title.text=item.ItemAttributes.Title; > > author.text=(item.ItemAttributes.Author)?"By " > > + item.ItemAttributes.Author:""; > > price.text=(item.Offers.Offer)?"Price: " + > > item.Offers.Offer.OfferListing.Price.FormattedPrice:""; > > availability.text= > > (item.Offers.Offer.OfferListing.Availability)? > > item.Offers.Offer.OfferListing.Availability:"Currently unavailable"; > > if (item.SmallImage) { > > image.source=item.SmallImage.URL; > > image.width=item.SmallImage.Width; > > image.height=item.SmallImage.Height; > > > > } else { > > image.source=noimage; > > image.width=60; > > image.height=40; > > } > > visible=true; > > } > > } > > ]]> > > </mx:Script> > > > > <mx:Text id="title" width="225" height="30" selectable="false" > > styleName="productTitle"/> > > <mx:HBox width="100%" height="100%"> > > <mx:Image id="image"/> > > <mx:VBox> > > <mx:Label id="author" width="157"/> > > <mx:Text id="availability" width="157" > > selectable="false"/> > > <mx:Label id="price" styleName="productPrice"/> > > </mx:VBox> > > </mx:HBox> > > > > > > Customer Reviews List: > > > > <mx:List > > dataProvider="{aws.ItemLookup.result.Items.Item.Cu > > stomerReviews.Review}" > > cellRenderer="CustomerReviewsCellRenderer" variableRowHeight="true" > > wordWrap="true" width="100%" height="100%"/> > > > > > > Customer Reviews List Cell Renderer: > > > > <mx:Script> > > <![CDATA[ > > [Embed(source="images/stars-0-0.gif")] > > var stars00:String; > > [Embed(source="images/stars-0-5.gif")] > > var stars05:String; > > [Embed(source="images/stars-1-0.gif")] > > var stars10:String; > > <!-- and so forth --> > > > > function setValue(str:String, item:Object, sel:String) { > > if (item==undefined) { > > visible = false; > > return; > > } else { > > switch (item.Rating) { > > case 0 : stars.source=stars00; break; > > case 0.5 : stars.source=stars05; break; > > case 1 : stars.source=stars10; break; > > <!-- and so forth --> > > } > > > > summary.text=item.Summary; > > review.htmlText=item.Content; > > visible=true; > > } > > } > > ]]> > > </mx:Script> > > > > <mx:HBox> > > <mx:Image id="stars" width="64" height="12"/> > > <mx:Label id="summary" styleName="productTitle"/> > > </mx:HBox> > > > > > > > > > > -- > > Flexcoders Mailing List > > FAQ: > http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt > > Search Archives: > > http://www.mail-archive.com/flexcoders%40yahoogroups.com > > > > > > > > > > SPONSORED LINKS > > > > Computer software testing > > <http://groups.yahoo.com/gads? > t=ms&k=Computer+software+testing&w1=Comput > > > er+software+testing&w2=Macromedia+flex&w3=Development&w4=Software+deve > lo > > per&c=4&s=93&.sig=kh2CguJwmatU5oBXjFo9Rg> > > > > Macromedia flex > > <http://groups.yahoo.com/gads? > t=ms&k=Macromedia+flex&w1=Computer+softwar > > > e+testing&w2=Macromedia+flex&w3=Development&w4=Software+developer&c=4& > s= > > 93&.sig=dAUcEV7do91-wrRtVS641g> > > > > Development > > <http://groups.yahoo.com/gads? > t=ms&k=Development&w1=Computer+software+te > > > sting&w2=Macromedia+flex&w3=Development&w4=Software+developer&c=4&s=93 > &. > > sig=AlxNUQBOI7Io7S7nhmxV0Q> > > > > Software developer > > <http://groups.yahoo.com/gads? > t=ms&k=Software+developer&w1=Computer+soft > > > ware+testing&w2=Macromedia+flex&w3=Development&w4=Software+developer&c > =4 > > &s=93&.sig=QWIit8JayomoIHLVkV3FDg> > > > > > > > > > > > > > > > > ________________________________ > > > > YAHOO! GROUPS LINKS > > > > > > > > * Visit your group "flexcoders > > <http://groups.yahoo.com/group/flexcoders> " on the web. > > > > * To unsubscribe from this group, send an email to: > > [EMAIL PROTECTED] > > <mailto:[EMAIL PROTECTED] subject=Unsubscribe> > > > > * Your use of Yahoo! Groups is subject to the Yahoo! Terms of > > Service <http://docs.yahoo.com/info/terms/> . > > > > > > > > ________________________________ > > > > > -- > Flexcoders Mailing List > FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt > Search Archives: > http://www.mail-archive.com/flexcoders%40yahoogroups.com > > > > > ________________________________ > > YAHOO! GROUPS LINKS > > > > * Visit your group "flexcoders > <http://groups.yahoo.com/group/flexcoders> " on the web. > > * To unsubscribe from this group, send an email to: > [EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]> > > * Your use of Yahoo! Groups is subject to the Yahoo! Terms of > Service <http://docs.yahoo.com/info/terms/> . > > > > ________________________________ -- Flexcoders Mailing List FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/flexcoders/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/