gpt4 book ai didi

ios - 当我在 iPhone/iPad 上触摸 MKMapView 时,我如何获得任何信息,例如 lat,long?

转载 作者:行者123 更新时间:2023-12-01 17:34:52 26 4
gpt4 key购买 nike

我现在有一个使用 xib 文件的 mapView,当我在 mapview 中触摸时,我想要该特定区域的纬度和经度,因此有任何乳清或任何示例代码可以帮助我完成这项任务。在此先感谢。

最佳答案

对于 iOS 3.2 或更高版本,使用 UIGestureRecognizer 可能会更好更简单。使用 map View ,而不是尝试对其进行子类化并手动拦截触摸。

首先,将手势识别器添加到 map View 中:

UITapGestureRecognizer *tgr = [[UITapGestureRecognizer alloc] 
initWithTarget:self action:@selector(tapGestureHandler:)];
tgr.delegate = self; //also add <UIGestureRecognizerDelegate> to @interface
[mapView addGestureRecognizer:tgr];
[tgr release];

接下来,执行 shouldRecognizeSimultaneouslyWithGestureRecognizer并返回 YES因此您的点击手势识别器可以与 map 同时工作(否则 map 不会自动处理引脚上的点击):
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer 
shouldRecognizeSimultaneouslyWithGestureRecognizer
:(UIGestureRecognizer *)otherGestureRecognizer
{
return YES;
}

最后,实现手势处理程序:
- (void)tapGestureHandler:(UITapGestureRecognizer *)tgr
{
CGPoint touchPoint = [tgr locationInView:mapView];

CLLocationCoordinate2D touchMapCoordinate
= [mapView convertPoint:touchPoint toCoordinateFromView:mapView];

NSLog(@"tapGestureHandler: touchMapCoordinate = %f,%f",
touchMapCoordinate.latitude, touchMapCoordinate.longitude);
}

关于ios - 当我在 iPhone/iPad 上触摸 MKMapView 时,我如何获得任何信息,例如 lat,long?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7283279/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com