目前我有两个文本字段,用于保存经度和纬度坐标的值。虽然由于某种原因,如果我在坐标的末尾输入N,S,E,W来指定方向,它似乎被忽略,只取数字值,实习生将我带到错误的位置。
到目前为止,我所做的一切。
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
mapview.showsUserLocation = YES;
MKCoordinateRegion region = { {0.0, 0.0}, {0.0,0.0}};
region.center.latitude = [self.myTextField.text floatValue];
region.center.longitude = [self.myTextField1.text floatValue];
region.span.longitudeDelta = 0.01f;
region.span.latitudeDelta = 0.01f;
[mapview setRegion:region animated:YES];
MapPin *ann = [[MapPin alloc] init];
ann.title = @"Test";
ann.subtitle = @"test";
ann.coordinate = region.center;
[mapview addAnnotation:ann];
}
答案 0 :(得分:2)
您尝试设置的值为CLLocationDegrees。要指定格林威治以西赤道或经度以南的纬度,请使用负数。您正在使用的floatVlaue
property只是丢弃您最后输入的字母,因为它们不会被识别为浮点值的一部分。