iOS 硬件 大头针 - 基础  添加

-(void)touchesBegan: 。。。{

UITouch *touch = [touches anyObject];

CGPoint point = [touch locationInView:self.mapView];

CLLocationCoordinate2D coordinate =  [self.mapView convertPoint:point toCoordinateFromView:self.mapView];

[self addAnnotation:coordinate];

}

  • (void)addAnnotation:(CLLocationCoordinate2D )coordinate{

    __block MyAnnotation *myAnnotation = [[MyAnnotation alloc]init];

// myAnnotation.title = @”我的位置”;

myAnnotation.coordinate = coordinate;

[self.mapView addAnnotation:myAnnotation];    ==== 他需要一个实现 <MKAnnotation>协议的对象而系统没有提供 所以要自己写一个类实现这个协议   可以自己添加

//@property (nonatomic, assign) CLLocationCoordinate2D coordinate;

//@property (nonatomic, copy, nullable) NSString *title;
//@property (nonatomic, copy, nullable) NSString *subtitle;

//
CLLocation *location = [[CLLocation alloc]initWithLatitude:coordinate.latitude longitude:coordinate.longitude];

[self.geocode reverseGeocodeLocation:location completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) {

    [placemarks enumerateObjectsUsingBlock:^(CLPlacemark * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {

        myAnnotation.title = obj.locality;

        myAnnotation.subtitle = obj.subLocality;
    }];

}];

}

//删除大头针
- (void)touchesMoved:。。。{

NSArray *annotation = [self.mapView annotations];

[self.mapView removeAnnotations:annotation];

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值