如何使用UIScrollView和CATiledLayer在可缩放的UIView上绘制标记

时间:2012-05-25 12:37:54

标签: objective-c ios xcode uiview catiledlayer

我想在使用UIScrollView和CATiledLayer的可缩放UIView上绘制标记。我目前正在使用与Apple的PhotoScroller演示应用程序相同的设置。我绘制形状没有问题,但我希望它们即使在缩放后也能保持在同一位置。我可以使用转换矩阵吗?或者我必须在缩放后或缩放期间重绘形状?这似乎是一项代价高昂的行动。

我不想缩放我正在绘制的形状。因此,无法使用缩放转换。

我很好奇MapView如何实现这个功能。任何人都有任何想法?

1 个答案:

答案 0 :(得分:2)

如果您希望“标记”不随缩放而缩放,我假设它是某种工具显示。

我建议不要将它放在滚动视图的内容视图中 - 直接滚动视图的子视图或滚动视图的兄弟,并显示在它上面。

另一种选择是对滚动委托和缩放委托方法进行操作以调整/替换标记,使其看起来不会移动。可能更多的工作,但可能会有好处。