0

我知道我们可以在 AppleWatchKit 代码本身中使用 CoreLocation API。但仍然,从文档中,我读到位置的获取应该只在父应用程序中完成,而不是在手表应用程序中。执行此操作的标准方法是什么?

我的要求很简单。我需要显示用户位置的注释。

4

1 回答 1

0

在 Apple Watch 中获取这样的位置:

CLLocationManager *locationManager = [[CLLocationManager alloc]init];
locationManager.delegate = self;
locationManager.distanceFilter = kCLDistanceFilterNone;
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
[locationManager startUpdatingLocation];
location = [locationManager location];
coordinate = [location coordinate];
latitude = [NSString stringWithFormat:@"%f", coordinate.latitude];
longitude = [NSString stringWithFormat:@"%f", coordinate.longitude];

像这样设置注释:

CLLocationCoordinate2D mapLocation = CLLocationCoordinate2DMake([lati floatValue], [longi floatValue]);

MKCoordinateSpan coordinateSpan = MKCoordinateSpanMake(1, 1);

[self.map setRegion:(MKCoordinateRegionMake(mapLocation, coordinateSpan))];

//For coloured pin 
//[self.map addAnnotation:mapLocation withPinColor: WKInterfaceMapPinColorGreen];
[self.map addAnnotation:mapLocation withImage:[UIImage imageNamed:@"mapPin.png"] centerOffset:CGPointMake(0,-7)];

这里的“map”是watchkit map的对象。

于 2015-07-27T16:34:51.463 回答