Понимание UIScrollView - PullRequest
       10

Понимание UIScrollView

1 голос
/ 20 мая 2010

Я пытаюсь понять, как работает UIScrollView для масштабирования.

Я пытался повернуть UIImageView в увеличенном UIScrollView, и я получил странные размеры, мое центрирование в просмотре прокрутки больше не работает.

Я решил проблему, установив zoomScale на 1.0 перед выполнением поворота, а затем вернув его обратно к предыдущему значению после завершения преобразования.

Мне было интересно, каково было влияние UIScrollView на его подпредставления. Меняет ли это их размеры, их позиции. Или это просто UIScrollView, который обрабатывает масштабирование и отрисовку увеличенных подпредставлений.

1 Ответ

1 голос
/ 05 мая 2016

Я понимаю, что это старый вопрос, но я решил добавить дополнительную информацию для тех, кто все еще прибывает сюда, как и я.

Представление прокрутки управляет представлением содержимого, оно увеличивает масштаб, добавляя преобразования к содержимому. Таким образом, для изображения при увеличении используется преобразование для масштабирования изображения до требуемого уровня масштабирования.

Когда вы перемещаете / прокручиваете ScrollView, он изменяет уровень масштабирования и исходные позиции для перемещения содержимого. Таким образом, содержание может быть больше, чем само представление прокрутки. Он обрезает содержимое на границах прокрутки и просто корректирует эту исходную позицию.

Центральным понятием объекта UIScrollView (или, просто, представления с прокруткой) является то, что это представление, происхождение которого настраивается над представлением содержимого. Он обрезает содержимое в своем фрейме, который обычно (но не обязательно) совпадает с содержимым главного окна приложения. Представление прокрутки отслеживает движения пальцев и соответственно регулирует начало координат. Представление, которое показывает свое содержимое «через» представление прокрутки, рисует эту часть себя на основе нового источника, который прикреплен к смещению в представлении содержимого. Сам вид прокрутки не рисует, за исключением отображения индикаторов вертикальной и горизонтальной прокрутки. Представление прокрутки должно знать размер представления содержимого, чтобы знать, когда прекратить прокрутку; по умолчанию он «отскакивает» назад, когда прокрутка выходит за границы содержимого.

Исходная документация

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