ios - 是否可以为 SKCalloutView 使用自定义 View ?

标签 ios objective-c skmaps calloutview

是否可以使用 Label 和 Button 等元素制作自定义 UIView,并将其用作 CalloutView?

到目前为止,我通过文档阅读的内容并未暗示这是可能的。

可以更改左右按钮,以及为箭头添加自定义 UIImageView,但无法确定是否真的可以自定义整个 View 。

最佳答案

是的——您只需覆盖 calloutViewForAnnotation 回调。演示项目中有一个示例(参见 AnnotationsViewController.m 内部),您可以在其中创建用户定义的 UIView 并返回它

- (UIView*)mapView:(SKMapView *)mapView calloutViewForAnnotation:(SKAnnotation *)annotation
{
    //Custom callouts.
    if (annotation.identifier == self.annotation1.identifier)
    {
        UIView *view = [[UIView alloc]initWithFrame:CGRectMake(0.0f, 0.0f, 200.0f, 50.0f)];
        view.backgroundColor = [UIColor purpleColor];
        view.alpha = 0.5f;
        return view;
    }

    return nil;// Default callout view will be used.
}

关于ios - 是否可以为 SKCalloutView 使用自定义 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31757164/

相关文章:

ios - 电话号码的使用和混淆重新升级 iOS

ios - 核心图不显示散点图线

ios - HTML5 网络应用程序未在 iOS Safari 中缓存以供离线使用

ios - UITableView 控制突出显示时发生的情况

ios - 如何设置 MKMap View 的缩放级别使 MKCircle(可变半径)可见?

package - iOS SKMaps 下载的 map 包在离线模式下不显示

ios - 滚动时自定义 UITableviewCell 缓慢且滞后

ios - 如何在 iOS 中加密文件名和文件夹名?

ios - 删除设置

ios - Skobbler 未从 PreinstalledMaps (iOS) 中的元文件夹中获取内容