NSCollectionView problems

  • Hello List,

      I have an NSCollectionView set up with bindings to visualize an
    NSMutableArray. When I call arrayController:setContent: the view
    (which initially doesn't have a content assigned) displays the items.
    So far so good. The problems are these:

    If there are two many items for one page to display, the vertical
    scroller appears. However, it's not the correct size. It's displayed
    as if all items would fit into the view (all but an imaginary 10 pixel
    row). It doesn't get the correct size until after the view is resized.
    Is there some way to force the view to recalculate it's scroll bar
    sizes? Or could this be caused by how the content is assigned (I'm
    using an array controller)?

    The second problem is when the view is resized (due to window resizing
    or any other reason). When the collection view is scrolled down with
    some item in the middle of the collection selected (so the scrollbar
    is not on it's topmost position), the resize causes the collection
    display to jump to the first item row. This problem can be observed in
    the Apple supplied IconCollection demo. Is there a way to prevent that?

    Thanks for any input!

    I'm using Xcode 3.0 on 10.5.2

    Regards
    Markus
    --
  • Hello again,

    On May 23, 2008, at 1:20 PM, Markus Spoettl wrote:
    > I have an NSCollectionView set up with bindings to visualize an
    > NSMutableArray. When I call arrayController:setContent: the view
    > (which initially doesn't have a content assigned) displays the
    > items. So far so good. The problems are these:
    >
    > If there are two many items for one page to display, the vertical
    > scroller appears. However, it's not the correct size. It's displayed
    > as if all items would fit into the view (all but an imaginary 10
    > pixel row). It doesn't get the correct size until after the view is
    > resized. Is there some way to force the view to recalculate it's
    > scroll bar sizes? Or could this be caused by how the content is
    > assigned (I'm using an array controller)?
    >
    > The second problem is when the view is resized (due to window
    > resizing or any other reason). When the collection view is scrolled
    > down with some item in the middle of the collection selected (so the
    > scrollbar is not on it's topmost position), the resize causes the
    > collection display to jump to the first item row. This problem can
    > be observed in the Apple supplied IconCollection demo. Is there a
    > way to prevent that?

    For those interested, both issues go away if "Automatically Hide
    Scrollers" is switched OFF for the enclosing scroll view. I had
    scrollers switched off by default for esthetic reasons. Apparently
    NSCollectionView can't handle that case properly.

    Does anyone know is this a known issue? If not I'd be glad to file a
    report.

    Regards
    Markus
    --
  • On May 23, 2008, at 11:06 PM, Markus Spoettl wrote:
    > For those interested, both issues go away if "Automatically Hide
    > Scrollers" is switched OFF for the enclosing scroll view. I had
    > scrollers switched off by default for esthetic reasons. Apparently
    > NSCollectionView can't handle that case properly.
    >
    > Does anyone know is this a known issue? If not I'd be glad to file a
    > report.

    Unfortunately the jump-to-first-row-after-control-resize problem did
    not go away. If anyone has a pointer on how to fix it I'd be more than
    interested in hearing it. Thanks!

    Regards
    Markus
    --
  • On May 24, 2008, at 08:53, Markus Spoettl wrote:

    > On May 23, 2008, at 11:06 PM, Markus Spoettl wrote:
    >> For those interested, both issues go away if "Automatically Hide
    >> Scrollers" is switched OFF for the enclosing scroll view. I had
    >> scrollers switched off by default for esthetic reasons. Apparently
    >> NSCollectionView can't handle that case properly.
    >>
    >> Does anyone know is this a known issue? If not I'd be glad to file
    >> a report.
    >
    >
    > Unfortunately the jump-to-first-row-after-control-resize problem did
    > not go away. If anyone has a pointer on how to fix it I'd be more
    > than interested in hearing it. Thanks!

    I'm having exactly the same problems, and have unfortunately not found
    any work-arounds so far. I have reported these as
    rdar://5962073 NSCollectionView resizes its item-views incorrectly
    rdar://5950467 NSCollectionView does not work correctly with
    NSScrollView's autohideScrollers
    rdar://5962086 NSCollectionView scrolls to origin on resize

    As for the "jump to first row problem" (i.e. 5962086), I don't think
    it's the NSCollectionView per-se doing the scrolling, at least it is
    never sent a scrollTo: message, so it must be something else (some
    strange interaction with the NSScrollView and the animation?).

    I quite like the collection view, but it needs better documentation
    (i.e. an NSCollectionView Programming Guide) and quite a few bug-fixes.

    > Regards
    > Markus

    Daniel.
  • I remember having some similar funky issues with the scrollbar — IIRC,
    the scrolling range was always much too large for the number of items,
    and resizing the window didn't help.

    I can't remember now exactly what I did to fix it ... looking through
    the revision history and diffs, I think it may have been that I used
    to set the maxItemSize, and when I took that out it fixed the problem.

    —Jens
  • On May 25, 2008, at 18:44, Jens Alfke wrote:

    > I remember having some similar funky issues with the scrollbar —
    > IIRC, the scrolling range was always much too large for the number
    > of items, and resizing the window didn't help.
    >
    > I can't remember now exactly what I did to fix it ... looking
    > through the revision history and diffs, I think it may have been
    > that I used to set the maxItemSize, and when I took that out it
    > fixed the problem.

    I'm using minItemSize but I think they have the same problems. I'm not
    sure how I'd get the same behaviour without using it. You can observe
    the behaviour I want at with the beta of my program (http://www.maven.de/code/wowplot/
      , some example data is at http://www.maven.de/code/wowplot/
    extract.txt ). The relevant bit is the stretch and shrink timeline
    entries in the view menu, which in- or decrease the effective size of
    the NSCollectionView x-axis.

    > —Jens

    Thanks,
    Daniel.
previous month may 2008 next month
MTWTFSS
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
Go to today