gpt4 book ai didi

iphone - 在 iphone 中查找方向,例如 North 等

转载 作者:搜寻专家 更新时间:2023-10-30 20:06:38 26 4
gpt4 key购买 nike

我的应用程序有一个问题,我想知道从当前纬度和经度到纬度和经度的方向

-(void)showDirection
{
CGFloat latitude = Lat;
if (latitude < 0) {
latitude = -latitude;
strDirection = @"S";
} else {
strDirection = @"N";
}
// Longitude
CGFloat longitude = Long;
if (longitude < 0) {
longitude = -longitude;
strDirection = @"W";
} else {
strDirection = @"E";
}
NSLog(@"direc %@",strDirection);
}

最佳答案

试试下面的代码:

首先在你的项目中添加框架CoreLocation.Framework,然后添加初始化CLLocationManager对象并导入CLLocationManager头文件。

你的viewcontroller.h

#import <CoreLocation/CoreLocation.h>
@interface Yourviewcontroller :UIViewController <CLLocationManagerDelegate>
{
CLLocationManager *locationManager;
}

你的viewcontroller.m

locationManager=[[CLLocationManager alloc] init];
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
locationManager.delegate = self;
//Start the compass updates.
[locationManager startUpdatingHeading];

添加获取当前方向的函数

-(void)locationManager:(CLLocationManager *)manager didUpdateHeading:(CLHeading *)newHeading
{
float mHeading = newHeading.magneticHeading;
if ((mHeading >= 339) || (mHeading <= 22)) {
//[direction setText:@"N"];

}else if ((mHeading > 23) && (mHeading <= 68)) {
//[direction setText:@"NE"];

}else if ((mHeading > 69) && (mHeading <= 113)) {
//[direction setText:@"E"];

}else if ((mHeading > 114) && (mHeading <= 158)) {
//[direction setText:@"SE"];

}else if ((mHeading > 159) && (mHeading <= 203)) {
//[direction setText:@"S"];

}else if ((mHeading > 204) && (mHeading <= 248)) {
//[direction setText:@"SW"];

}else if ((mHeading > 249) && (mHeading <= 293)) {
// [direction setText:@"W"];

}else if ((mHeading > 294) && (mHeading <= 338)) {
// [direction setText:@"NW"];

}
}

注意:指南针只能在真实的 iPhone 设备上使用,不能在 iPhone 模拟器中使用..!

关于iphone - 在 iphone 中查找方向,例如 North 等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10245520/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com