Как iOS вычисляет положение и размер большого пальца полосы прокрутки? - PullRequest
1 голос
/ 09 февраля 2012

Недавно я сравнил поведение большого пальца в полосе прокрутки между Android и iOS.Я обнаружил следующее:

  1. Существует два типа для вычисления смещения и экстента большого пальца в Android (управляется android: атрибут smoothScrollbar или setSmoothScrollbarEnabled метод).
  2. Если smoothScrollbar равно false, при прокрутке большой палец выглядит прерывистым.
  3. Если smoothScrollbar равно true,большой палец выглядит гладким, но его размер изменяется при прокрутке, если высота элементов различна.
  4. Однако большой палец в iOS намного лучше.Это выглядит довольно гладко, и экстент не меняется.

В Android метод вычисления смещения и экстента можно найти в AbsListView.Однако я не знаю, как эти значения компенсируются в iOS.Кто-нибудь может помочь?

1 Ответ

1 голос
/ 09 февраля 2012

Для смещения содержимого используйте self.scrollView.contentOffset.
Для значений кадра (включая ширину) используйте self.scrollView.frame.size.(<>); [width, height], self.scrollview.bounds; или self.scrollview.frame.origin.(<>); [x,y].

Если вы хотите получать уведомления о прокруткесобытия, становитесь делегатом в представлении прокрутки1018 * Управление масштабированием

– viewForZoomingInScrollView:
– scrollViewWillBeginZooming:withView:
– scrollViewDidEndZooming:withView:atScale:
– scrollViewDidZoom:

Ответ на анимацию прокрутки

– scrollViewDidEndScrollingAnimation:
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...