我希望UIScrollView中的图像(或者至少显示在UIScrollView中)在放大和缩小时不会改变它们的大小。我希望图像在缩放或滚动时保持其位置。
用例是我有一个带有图钉的自定义地图视图。我希望在缩放和滚动地图时图钉保持不变,但我不希望它们与内容“放大”。
这样做的最佳方式是什么?
答案 0 :(得分:2)
您可以将图钉图像作为UIScrollView的子视图,而不是
返回的视图的子视图- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
然后,在scrollViewDidZoom中,通过zoomScale调整图钉x和y以保持引脚正确定位:
- (void)scrollViewDidZoom:(UIScrollView *)scrollView {
imageView.frame = CGRectMake(pushPinX * scrollView.zoomScale, pushPinY * scrollView.zoomScale, imageView.frame.size.width, imageView.frame.size.height);
}