У меня есть NSScrollView, содержащий NSImageView, размер которого изменяется в зависимости от различных факторов. Когда он изменяет размер, я обычно меняю изображение, поэтому я прокручиваю NSScrollView вверх. Это прекрасно работает. Однако, когда я снова начинаю прокручивать NSScrollView, он перемещается на несколько пикселей, а затем (в большинстве случаев) переходит к нижней части прокрутки. После того, как он прыгнет один раз, он работает как обычно, пока я снова не переведу прокрутку вверх. Это сводит меня с ума. Все, что я действительно делаю, это:
[_imageView setImage: anNSImage];
NSRect frame;
NSSize imageSize = [anNSImage] size];
frame.size = imageSize;
frame.origin = NSZeroPoint;
[_imageView setFrame: frame];
[[_mainScrollview contentView] scrollToPoint: NSMakePoint(0, [_imageView frame].size.height - [_mainScrollview frame].size.height)];