2011-02-17 12 views
6

A medida que ScrollView ZoomScale disminuye o aumenta el valor máximo de ScrollView contentOffset.X & contentOffset.Y, disminuye o aumenta, respectivamente. ¿Podemos deducir una relación entre ZoomScale & contentOffset.x máximo programáticamente? Si es así, proporcione la lógica para el mismo.ScrollView ContentOffset y ZoomScale

Respuesta

8

considerar que tiene un UIScrollView "A" de tamaño (100, 100) de píxel

y una UIView "B" (con eventualmente subvistas), que es su contenido, tamaño (200, 200)

cuando A.ZoomScale es 1 puede ver solo una parte de B (un tamaño recto 100, 100) y puede desplazar B en A para cambiar la parte visible, haciendo que cambie el "origen" de este rect visible en " B ", y este" origen "puede ser un punto entre (0, 0) y (100, 100). si su contentOffset.x, contentOffset.y es 100, 100 está buscando en el lado/parte derecha/inferior de B. No puede desplazarse a (101, 100) 'porque no hay más que ver a la derecha de ese parte.

Ahora se puede acercar, con A.ZoomScale = 2

que significa que mientras todavía está dimensionada A (100, 100), el contenido (B) es ahora (400, 400), por lo que ahora el origin.x puede ir de 0 a 300 (400-300 < - content.size - A.size)

ps

puede obtener:

A.contentSize (que es el tamaño de "zoom B "y cambia según el zoomScale, cuando zoomScale = 1 es igual a B.frame)

A.zoomScale

A.frame

+0

Gracias para explicar el concepto de contentSize y contentOffset. El concepto a su vez me ayudó a resolver mi problema, es decir, mi lógica es correcta. –

+0

Veo qué significa 'contentOffset'. ¡Gracias! – Philip007

Cuestiones relacionadas