Tôi có một số UIImageView
trong số UIScrollView
và tôi gặp sự cố với thuộc tính contentOffset
. Từ tham chiếu của Apple, điều này được định nghĩa là:contentOffset in UIScrollView sau khi xoay của iPhone
contentOffset: Điểm gốc của nội dung được bù đắp từ nguồn gốc của chế độ xem cuộn.
Ví dụ, nếu hình ảnh nằm ở góc trên bên trái của màn hình như dưới đây thì contentOffset sẽ (0,0):
_________
|IMG |
|IMG |
| |
| |
| |
| |
---------
Đối với luân chuyển thiết bị tôi có các thiết lập sau:
scrollView.autoresizingMask = (UIViewAutoresizingFlexibleWidth |
UIViewAutoresizingFlexibleHeight);
imageView.autoresizingMask = (UIViewAutoresizingFlexibleWidth |
UIViewAutoresizingFlexibleHeight);
imageView.contentMode = UIViewContentModeCenter;
scrollView.contentMode = UIViewContentModeCenter;
Điều này sẽ làm cho mọi thứ xoay quanh tâm của màn hình. Sau khi xoay màn hình, sau đó màn hình sau đó sẽ trông như thế này:
______________
| IMG |
| IMG |
| |
--------------
Vấn đề của tôi là nếu bây giờ tôi đọc của contentOffset
, nó vẫn là (0,0). (Nếu tôi di chuyển UIImage ở chế độ ngang, giá trị của contentOffset
được cập nhật, nhưng nó được tính đối với sai nguồn gốc.)
Có cách nào để tính tọa độ cho UIImage liên quan đến phía trên bên trái góc của màn hình. contentOffset
dường như chỉ trả lại giá trị này khi màn hình ở hướng ban đầu của chế độ xem.
Tôi đã cố đọc self.view.transform
và scrollView.transform
nhưng chúng luôn là nhận dạng.