首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >保持两个MKMapViews显示相同的区域

保持两个MKMapViews显示相同的区域
EN

Stack Overflow用户
提问于 2011-05-08 00:27:57
回答 3查看 268关注 0票数 3

在我的iPad应用程序上,我有两个大小相同的mapViews并排显示。我希望这些总是显示相同的区域。我现在使用regionDidChangeAnimated: delegate方法来实现这一点。

这并不总是那么有效(有时缩放后区域会不同),并且在用户移动其中一个地图和移动另一个地图之间存在滞后。

有没有一种好的方法可以在两个地图上复制触摸,这样当用户在一个地图上平移和缩放时,它会自动在另一个地图上同时做同样的事情?

我看到的一件事是创建一个UITouch对象,其位置值与正在移动的地图中的位置值相同,但这并不是一个好的解决方案。

有没有一种方法可以将一个UIView上的一组触摸复制到另一个上(因为MKMapView是一个UIView)?

谢谢,罗斯

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-28 02:31:11

当用户正在操作其中一个地图时,您可以使用UIGestureRecognizer来帮助保持地图更同步。

例如,使用UIPanGestureRecognizer,手势识别器操作处理程序将在用户平移地图时触发多次--这与仅在平移完成时触发的regionDidChangeAnimated不同。

您需要向一个或两个映射添加一个手势识别器,并实现您的自定义手势处理方法。还要实现shouldRecognizeSimultaneouslyWithGestureRecognizer委托方法并返回YES,以便您的手势处理程序可以与map的手势处理程序协同工作。

示例:

代码语言:javascript
复制
//add the gesture handler to map(s)...
UIPanGestureRecognizer *pgr = [[UIPanGestureRecognizer alloc] 
    initWithTarget:self action:@selector(gestureHandler:)];
pgr.delegate = self;
[mapViewA addGestureRecognizer:pgr];
[pgr release];

//...

- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer 
    shouldRecognizeSimultaneouslyWithGestureRecognizer:
        (UIGestureRecognizer *)otherGestureRecognizer
{
    return YES;
}

- (void)gestureHandler:(UIGestureRecognizer *)gestureRecognizer
{
    [mapViewB setRegion:mapViewA.region animated:NO];
}

如果你想将手势识别器添加到两者中,你需要为每个地图创建一个单独的实例(即。您不能将pgr添加到两个映射中)。您可能还想/需要添加UIPinchGestureRecognizerUITapGestureRecognizer。不过,您可以对所有识别器使用相同的处理程序方法。

我仍然会实现regionDidChangeAnimated,以防遗漏一个手势。

票数 0
EN

Stack Overflow用户

发布于 2011-06-15 23:34:31

试着考虑使用一个静态变量和一个静态函数来控制缩放级别

票数 0
EN

Stack Overflow用户

发布于 2011-07-28 01:25:13

如果你不是为应用商店开发的,你可以使用私有API来合成触控。

参见http://cocoawithlove.com/2008/10/synthesizing-touch-event-on-iphone.html

您可以通过覆盖UIApplication sendEvent:截获、复制和修改触摸事件。我还没有测试它应该可以工作,尽管你不能提交应用程序商店。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5922422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档