1

我是 IOS 应用程序开发的新手。我有一个地图视图,当用户点击 MKMapView 时,我想在那里弹出一个文本框,以便用户可以标记该地点。我想出了如何处理地图上的点击事件的部分。但我真的不明白如何在地图上显示文本框。我想我应该使用叠加层,但我不确定如何将文本框放在叠加层中。有人可以给我示例代码以将文本框放在叠加层中吗?

这是我处理点击事件的代码,这个覆盖显示可能必须进入 if 循环。

-(void)handleTapOnMap:(UITapGestureRecognizer*)sender 
{
    if (sender.state == UIGestureRecognizerStateRecognized)
    {
        NSLog(@"Tapped on the map");
        return;
    }
    else {

        return;
    }
}
4

1 回答 1

1

如果您想添加自定义叠加层,您可以在 github上的叠加层上看到这个项目

或者,如果您想自己添加叠加层,则必须创建自定义视图并使用委托方法:

- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id )overlay
    {
    yourOverLayView *view = [[[yourOverLayView alloc] initWithOverlay:overlay] autorelease];

    return view;
    }

您还可以阅读mkmapview 教程

于 2012-05-16T06:41:51.967 回答