У меня есть UIImageView
в UIScrollView
, и у меня проблемы со свойством contentOffset
. В справочнике Apple это определяется как:
contentOffset : точка, в которой исходная точка представления содержимого смещена от исходной точки представления прокрутки.
Например, если изображение находится вверху левый угол экрана, как показано ниже, тогда contentOffset будет (0,0):
_________
|IMG |
|IMG |
| |
| |
| |
| |
---------
Для поворота устройства у меня есть следующие настройки:
scrollView.autoresizingMask = (UIViewAutoresizingFlexibleWidth |
UIViewAutoresizingFlexibleHeight);
imageView.autoresizingMask = (UIViewAutoresizingFlexibleWidth |
UIViewAutoresizingFlexibleHeight);
imageView.contentMode = UIViewContentModeCenter;
scrollView.contentMode = UIViewContentModeCenter;
Это заставит все вращаться вокруг центра экрана. После поворота экрана экран будет выглядеть следующим образом:
______________
| IMG |
| IMG |
| |
--------------
Моя проблема в том, что если я сейчас прочитаю contentOffset
, он все равно будет (0,0). (Если я перемещаю UIImage в альбомный режим, значение contentOffset
обновляется, но оно вычисляется относительно неправильного начала координат.)
Есть ли способ вычислить координаты для UIImage с помощью относительно левого верхнего угла экрана. contentOffset
, кажется, возвращает это значение, только когда экран находится в начальной ориентации представления.
Я попытался прочитать self.view.transform
и scrollView. преобразовать
, но они всегда идентичны.