UIScrollview在缩放时同步子视图原点

时间:2013-02-26 20:30:12

标签: ios uiscrollview zoom scale uiscrollviewdelegate

我正在尝试开发一种自定义地图。

所以我有一个启用缩放的滚动视图。

此scrollview有一个UIImageView作为其子视图,代表用户的地图。

我希望用户能够像MapKit一样“删除一个引脚”。

如果我将pin imageView添加到地图图像视图,则图像图像将根据滚动视图缩放进行缩放,这不是我想要的。

我希望获得与MapKit Mapview相同的结果。

当用户平移或缩放时,引脚应移动,但其图像不应变小或变大。

有一种简单的方法可以做到这一点而不会因为对zoomscale和contentoffset的数学猜测而变得疯狂吗?

非常感谢大家。

2 个答案:

答案 0 :(得分:0)

这比任何事情都更令人猜测,但添加pin的图层作为图像视图的子图层似乎就是这样做的方法。

答案 1 :(得分:0)

我做到了。

我所要做的就是将图钉添加到地图图像视图中。

之后在scrollView委托上,我根据滚动视图缩放比例调整了引脚比例,如下所示:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView{
    _redPin.transform = CGAffineTransformMakeScale(1 / scrollView.zoomScale, 1 / scrollView.zoomScale);
}