可拖动的 MKPinAnnotationView 不起作用。 draggable = YES,callout有title和subtitle,setCoordinate实现
Posted
技术标签:
【中文标题】可拖动的 MKPinAnnotationView 不起作用。 draggable = YES,callout有title和subtitle,setCoordinate实现【英文标题】:MKPinAnnotationView draggable not working. draggable = YES, callout has title and subtitle, and setCoordinate is implemented 【发布时间】:2013-03-15 10:27:32 【问题描述】:当我尝试拖动图钉时,它不会移动。当我触摸它时,它会变暗。但是,它永远不会抬起,也永远不会移动。
这是我的注释类的头文件:
#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>
#import <Parse/Parse.h>
@interface GeoPointAnnotation : NSObject <MKAnnotation>
- (id)initWithObject:(PFObject *)aObject;
@property (nonatomic, readwrite, assign) CLLocationCoordinate2D coordinate;
@property (nonatomic, readonly, copy) NSString *title;
@property (nonatomic, readonly, copy) NSString *subtitle;
- (void)setCoordinate:(CLLocationCoordinate2D)newCoordinate;
@end
这是我在视图控制器中创建注释的地方:
- (void)updateMap
[self.mapView removeAnnotations:self.mapView.annotations];
PFGeoPoint *geoPoint = [self.post location];
// center the map around the geopoint
[self.mapView setRegion:MKCoordinateRegionMake(
CLLocationCoordinate2DMake(geoPoint.latitude, geoPoint.longitude),
MKCoordinateSpanMake(0.01, 0.01)
)];
GeoPointAnnotation *annotation = [[GeoPointAnnotation alloc] initWithObject:self.post.object];
[self.mapView addAnnotation:annotation];
// from Geolocations by Parse
#pragma mark - MKMapViewDelegate
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation
static NSString *GeoPointAnnotationIdentifier = @"RedPin";
MKPinAnnotationView *annotationView = (MKPinAnnotationView *)[mapView dequeueReusableAnnotationViewWithIdentifier:GeoPointAnnotationIdentifier];
if (!annotationView)
annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:GeoPointAnnotationIdentifier];
annotationView.pinColor = MKPinAnnotationColorRed;
annotationView.canShowCallout = YES;
annotationView.draggable = YES;
annotationView.animatesDrop = YES;
return annotationView;
有什么想法吗?
【问题讨论】:
查看***.com/questions/12558753/… 【参考方案1】:发现问题:我忘记在我的 Storyboard xib 中连接 Map View 的委托。 h/t Nitin Gohel - 谢谢!
【讨论】:
我也是!你不是一个人。您应该接受您作为答案发布。以上是关于可拖动的 MKPinAnnotationView 不起作用。 draggable = YES,callout有title和subtitle,setCoordinate实现的主要内容,如果未能解决你的问题,请参考以下文章
MKPinAnnotationView 禁用选择/突出显示但不提升和拖动
拖动我的 MKAnnotationView 后拖动地图不会移动 MKAnnotationView