2015-11-14 4 views
-1

Я пытаюсь преобразовать координаты прокрутки в координаты окна. Однако результирующий фрейм, по-видимому, смещается по высоте строки состояния, что вводит в заблуждение, так как высота остается той же, что и неправильно.Преобразование рамки прокрутки в координаты окна

CGRect visibleBounds = CGRectMake(0, 0, CGRectGetWidth(self.scrollView.frame), CGRectGetHeight(self.scrollView.frame)); 

CGRect scrollViewFrame = [self.scrollView convertRect:visibleBounds toView:nil]; 

lldb войти: Описание

Печать visibleBounds: (CGRect) visibleBounds = (происхождение = (х = 0, у = 0), размер = (ширина = 320, высота = 568))

описание Печать scrollViewFrame: (CGRect) scrollViewFrame = (происхождение = (х = 0, у = 20), размер = (ширина = 320, высота = 568))

+0

Ожидает, что высота прокрутки будет изменена с помощью прокрутки? –

+0

Вы ищете scrollView.contentSize.height? или высота прокрутки? –

+0

границы всегда начинаются с 0,0 ... и рамка всегда начинается с 0,0, начиная со строки состояния !!! высота по-прежнему одинакова в обоих случаях. –

ответ

1

Вычисляет границы прокрутки, которые можно использовать для расчета кадра для просмотра прокрутки в координатах окна, независимо от того, что я вижу отрицательные границы, созданный кадр будет в любом случае правильным.

[self.scrollView convertRect:self.scrollView.bounds toView:nil]; 
Смежные вопросы