【问题标题】:Creating Custom Call out View with button on it创建带有按钮的自定义调出视图
【发布时间】:2011-12-20 04:27:38
【问题描述】:

我遇到了地图查看问题,过去三天我一直在网上冲浪,但仍未找到任何合适的解决方案。

我的问题是当我单击自定义的图钉时,会出现一个标注。但标准标注仅支持两行文本。在我的情况下,我必须使用按钮显示四行文本。 请任何人告诉我如何创建自定义标注或我应该使用什么方法,因为无法修改标准标注。

任何建议将不胜感激。 提前致谢。

【问题讨论】:

    标签: iphone objective-c ios mkmapview callouts


    【解决方案1】:

    在您的委托方法中

    - (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
    {
        MKAnnotationView* annotationView = nil;
    
        //your code
    
            UIView *vw = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
            vw.backgroundColor = [UIColor redColor];
            UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(5, 5, 50, 50)];
            label.numberOfLines = 4;
            label.text = @"hello\nhow are you\nfine";
            [vw addSubview:label];
            annotationView.leftCalloutAccessoryView = vw;
            return annotationView
    
    }
    

    【讨论】:

    • 您好,感谢您的回答,但这会产生一个问题,如果我在视图中添加三个字符串,那么标题将为 nil 并且不会出现 calout。
    • 这就是我添加空格的原因,它不是空字符串
    • 我认为左右 CalloutAccessoryView 将不起作用,因为如果我们的视图高度超过 32 则 callour 的背景视图不会增加。请提出其他建议。
    • @Gypsa 你有没有得到解决方案...然后请发布它...我处于同样的情况
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-04
    • 1970-01-01
    • 2013-03-10
    • 1970-01-01
    • 1970-01-01
    • 2011-01-14
    • 1970-01-01
    相关资源
    最近更新 更多