Очень поздно ответил на свой вопрос, но я подумал, что покажу, как мне это удалось.
Я создал подкласс UIScrollView и реализовал метод layoutSubviews, который вызывается каждый раз, когда изменяется положение прокрутки. Здесь все, что вам нужно сделать, это определить, какое представление вы хотите привязать, и сделать что-то вроде этого:
- (void) layoutSubviews {
[super layoutSubviews];
CGFloat x = 0.0f;
CGFloat y = MIN(self.contentOffset.y,0.0f);
anchorview.frame = CGRectMake(x,y,anchorview.frame.size.width,anchorview.frame.size.height);
}
Если вы хотите, чтобы привязанный вид оставался сверху, если вы прокручиваете за верх (вместо того, чтобы оставаться в той же позиции относительно вида прокрутки), то это будет сделано именно так, поскольку координата y смещения содержимого будет меньше чем ноль, когда вы прокручиваете за верхнюю часть окна.