首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ios6 MKMapView取消选择错误

ios6 MKMapView取消选择错误
EN

Stack Overflow用户
提问于 2012-12-07 20:24:25
回答 2查看 219关注 0票数 0

我在iOS 6的地图上观察到了一个奇怪的行为。这是一个添加单个注释的代码,绝对不会在项目中添加任何其他注释:

代码语言:javascript
运行
复制
- (void)viewDidLoad
{
    [super viewDidLoad];
    MKPointAnnotation * p = [[MKPointAnnotation alloc] init];
    p.coordinate = CLLocationCoordinate2DMake(10, 10);
    p.title  = @" test test";
    [self.mapView addAnnotation:p];
    self.mapView.centerCoordinate = p.coordinate;
}


- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id < MKAnnotation >)annotation
{
    MKPinAnnotationView * p = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"wassup" ];
    p.canShowCallout = YES;
    p.pinColor = MKPinAnnotationColorGreen;
    return p;
}

当它被选中时,我将地图移动(平移)较小的距离,如0.5-1厘米,在iOS6上注释将被取消选择。在早期版本中,工作方式与预期相同,并保持选中状态。

这是个bug吗?有什么解决方法吗?

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2012-12-07 21:11:01

苹果地图充满了漏洞..哈哈你也注意到了..它是iOS 6的一个特性,有时会激怒用户。:)

在annotaionView方法使用中:

代码语言:javascript
运行
复制
// iOS6 BUG WORKAROUND !!!!!!!
if (is6orMore) {
     [annotationView setTransform:CGAffineTransformMakeRotation(.001)]; //any small positive rotation
}

另请参阅link

票数 0
EN

Stack Overflow用户

发布于 2012-12-11 13:20:35

如果不想取消选择注释视图,则应该子类MKAnnotationView并覆盖setSelected:animated:方法,并停止取消选择注释视图。

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

https://stackoverflow.com/questions/13763048

复制
相关文章

相似问题

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