У меня 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.transform
, но они всегда идентичны.