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

Objective c 如何使用UIScrollView和CATiledLayer在可缩放的UIView上绘制标记,objective-c,ios,xcode,uiview,catiledlayer,Objective C,Ios,Xcode,Uiview,Catiledlayer,我想在使用UIScrollView和CATiledLayer的可缩放UIView上绘制标记。我目前使用的设置与苹果的PhotoScroller演示应用程序相同。我画形状没有问题,但我希望它们即使在缩放后仍保持在同一位置。我能用一个变换矩阵来表示吗?或者我必须在缩放后或缩放过程中重新绘制形状吗?这似乎是一项耗资巨大的行动 我不想缩放我正在绘制的形状。因此,使用缩放变换是不可能的 我很好奇MapView是如何实现这一功能的。有人知道吗?如果你想让“标记”不随缩放而缩放,我假设这是某种工具显示 我建议

我想在使用UIScrollView和CATiledLayer的可缩放UIView上绘制标记。我目前使用的设置与苹果的PhotoScroller演示应用程序相同。我画形状没有问题,但我希望它们即使在缩放后仍保持在同一位置。我能用一个变换矩阵来表示吗?或者我必须在缩放后或缩放过程中重新绘制形状吗?这似乎是一项耗资巨大的行动

我不想缩放我正在绘制的形状。因此,使用缩放变换是不可能的

我很好奇MapView是如何实现这一功能的。有人知道吗?

如果你想让“标记”不随缩放而缩放,我假设这是某种工具显示

我建议不要把它放在滚动视图的内容视图中——要么直接放在滚动视图的子视图中,要么放在滚动视图的同级视图中并显示在它上面


另一个选项是对滚动代理和缩放代理方法进行操作,以调整/替换标记的大小,使其看起来不移动。可能需要做更多的工作,但可能会有好处。

使用CATiledLayer作为UIScrollView的子视图不是很有帮助吗?我尝试了您的上一个选项,它成功了。花了一段时间实施!