相关疑难解决方法(0)

如何为MKAnnotationView动画制作动画?

我有一个自定义的MKAnnotationView,我在viewForAnnotation中自己设置我的图像.我如何使用MKPinAnnotationView为它设置动画效果?

我的代码是

- (MKAnnotationView *)mapView:(MKMapView *)map viewForAnnotation:(id <MKAnnotation>)annotation
{
    static NSString *AnnotationViewID = @"annotationViewID";

    MKAnnotationView *annotationView = (MKAnnotationView *)[mapView dequeueReusableAnnotationViewWithIdentifier:AnnotationViewID];

    if (annotationView == nil)
    {
        annotationView = [[[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:AnnotationViewID] autorelease];
    }

    annotationView.image = [UIImage imageNamed:@"blah.png"];
    annotationView.annotation = annotation;

    return annotationView;
}
Run Code Online (Sandbox Code Playgroud)

cocoa-touch mapkit mkpinannotationview mkannotationview ios-4.2

29
推荐指数
5
解决办法
2万
查看次数

缩放以适合地图上的当前位置和注释

我是swift(一般的iOS编程)的新手,我正在试图弄清楚如何缩放地图以适应地图上的2个点.

目前我有

var zoomRect = MKMapRectNull;
var myLocationPointRect = MKMapRectMake(myLocation.longitude, myLocation.latitude, 0, 0)
var currentDestinationPointRect = MKMapRectMake(currentDestination.longitude, currentDestination.latitude, 0, 0)

zoomRect = myLocationPointRect;
zoomRect = MKMapRectUnion(zoomRect, currentDestinationPointRect);
Run Code Online (Sandbox Code Playgroud)

什么也没做.

我必须以zoomRect某种方式申请地图吗?

mapkit swift

12
推荐指数
3
解决办法
1万
查看次数

MKMapView的ContentInset

UIScrollView有一个很好的contentInset属性,告诉视图,哪个部分在屏幕上可见.我有MKMapView一个半透明视图部分覆盖的.我希望地图在视图下可见.我必须在地图上显示几个注释,并且我想使用它们缩放它们-setRegion:animated:,但是地图视图不尊重它被部分覆盖,因此我的一些注释将被半透明视图覆盖.

在此输入图像描述

有没有办法告诉地图,像滚动视图一样使用contentInset


更新:这是我尝试过的:

- (MKMapRect)mapRectForAnnotations
{
    if (self.trafik) {
        MKMapPoint point = MKMapPointForCoordinate(self.trafik.coordinate);
        MKMapPoint deltaPoint;

        if (self.map.userLocation &&
            self.map.userLocation.coordinate.longitude != 0) {
            MKCoordinateSpan delta = MKCoordinateSpanMake(fabsf(self.trafik.coordinate.latitude-self.map.userLocation.coordinate.latitude),
                                                          fabsf(self.trafik.coordinate.longitude-self.map.userLocation.coordinate.longitude));
            deltaPoint = MKMapPointForCoordinate(CLLocationCoordinate2DMake(delta.latitudeDelta, delta.longitudeDelta));
        } else {
            deltaPoint = MKMapPointForCoordinate(CLLocationCoordinate2DMake(0.01, 0.01));
        }

        return MKMapRectMake(point.x, point.y, deltaPoint.x, deltaPoint.y);
    } else {
        return MKMapRectNull;
    }
}
Run Code Online (Sandbox Code Playgroud)

objective-c mkmapview

9
推荐指数
2
解决办法
1328
查看次数

IOS:放大mapkit以获取两个注释点

我想知道当我在mapview中设置蓝点(我的位置)和另一个引脚时,是否有办法进行动态缩放...当我加载mapview时,我想在同一帧中显示这两个点.. .可能吗?谢谢

xcode mapkit ios

6
推荐指数
1
解决办法
4555
查看次数

SwiftUI Map 不以注释为中心

我使用下面的代码来加载地图,但结果出来后,地图仍然以用户位置为中心而不是注释周围,因为我必须滚动到图钉才能看到。

Map(coordinateRegion: $region, showsUserLocation: true, annotationItems: searchResults) { dest in
    MapAnnotation(coordinate: dest.coordinate, anchorPoint: CGPoint(x: 0.5, y: 0.5)) {
            MapPin(coordinate)
    }
}
Run Code Online (Sandbox Code Playgroud)

mapkit ios swift swiftui

3
推荐指数
1
解决办法
1456
查看次数

MKMapView缩放到注释 - annotationVisibleRect

有没有人有一个例子,说明如何使用MKMapView上的annotationVisibleRect属性将MKMapView缩放到所有可见注释的区域?我已经看到这篇文章提供了一个不错的解决方案,但似乎这个annotationVisibleRect属性将是最简单的解决方案.

mkmapview

2
推荐指数
1
解决办法
2664
查看次数