• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: How to save and restore NSScrollView scroll position?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to save and restore NSScrollView scroll position?


  • Subject: Re: How to save and restore NSScrollView scroll position?
  • From: Ashley Clark <email@hidden>
  • Date: Fri, 2 Apr 2010 20:57:08 -0500

On Apr 2, 2010, at 5:33 PM, James Walker wrote:

> On 4/2/2010 1:47 PM, Quincey Morris wrote:
>> On Apr 2, 2010, at 13:15, James Walker wrote:
>>
>>> I have an NSScrollView containing an NSTableView whose content is
>>> managed by an NSArrayController. I have a situation where I need to
>>> temporarily set the array controller's content to nil, mess with the
>>> content, and then hand it back to the array controller, and I'd like to
>>> preserve the scrolling position. I thought I could just get the value of
>>> the NSScroller before, and set it back after, but that results in the
>>> scroll bar being out of sync with the actual scrolling state of the
>>> table. How can I do it?
>>
>> Maybe something like this (typed in Mail):
>>
>> 	clipOrigin = tableView.enclosingScrollView.contentView.bounds.origin;
>>
>> 	... change the table then put it back again ...
>>
>> 	[tableView.enclosingScrollView.contentView scrollToPoint: clipOrigin];
>>
>> This first line is kind of a guess, based on the documentation for 'scrollToPoint:'.
>
>
> When I tried that, the table was in the right position, but the scroll bar was wrong.  If I do BOTH your trick and what I originally tried with the NSScroller value, then it seems to work.  Thanks.

You can manually update the scrollers position but there's a method on NSScrollView that will do it for you based on the content view's origin.

- (void)reflectScrolledClipView:(NSClipView *)aClipView

so, [[tableView enclosingScrollView] reflectScrolledClipView:[[tableView enclosingScrollView] contentView]]


Ashley



_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

References: 
 >How to save and restore NSScrollView scroll position? (From: James Walker <email@hidden>)
 >Re: How to save and restore NSScrollView scroll position? (From: Quincey Morris <email@hidden>)
 >Re: How to save and restore NSScrollView scroll position? (From: James Walker <email@hidden>)

  • Prev by Date: Re: Creating WebView in code
  • Next by Date: Re: Alternative startup for application
  • Previous by thread: Re: How to save and restore NSScrollView scroll position?
  • Next by thread: Implied use of Properties
  • Index(es):
    • Date
    • Thread