我的应用程序目前使用带有自定义叠加层的相机拍摄并保存图片。
理想情况下,我想在拍摄照片时收集以下3个参数:
我主要专注于获得第1项和第1项。 2.关于我如何做到这一点的任何想法?
答案 0 :(得分:1)
你应该在viewController的.h文件中声明几个变量
float locLat; //for latitude
float locLon; //for longitude
float direction; // for angle in radian
CLLocationManager *Manager;
在.d文件中的viewdidload方法
Manager = [[CLLocationManager alloc] init];
Manager.delegate = self;
Manager.desiredAccuracy = kCLLocationAccuracyBest;
Manager.distanceFilter = 1.0;
[Manager startUpdatingLocation];
[Manager startUpdatingHeading];
这些委托方法将在您获得位置更新的地方被调用
-(void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
{
userlat = newLocation.coordinate.latitude;
userlon = newLocation.coordinate.longitude;
}
这将为您提供指南针值更新
- (void)locationManager:(CLLocationManager *)manager didUpdateHeading:(CLHeading *)newHeading
{
float direction = newHeading.trueHeading;
}
您可以在imagepicker的didFinishPickingMediaWithInfo委托方法中使用这三个值。