【问题标题】:Error in displaying annotations in map在地图中显示注释时出错
【发布时间】:2013-11-22 12:06:54
【问题描述】:

在我的应用中,我有一个地图视图和两个文本框。
文本框包含注释的坐标。
如果我在这些文本框中输入坐标并按下提交按钮,则会绘制相应坐标的注释。
但是,如果我没有在文本框中输入任何值并按下提交按钮,则会在旧金山绘制一个注释。

- (IBAction)submitButton:(id)sender 
{
myCoordinate.latitude=[latitude_value.text floatValue];
myCoordinate.longitude=[longitude_value.text floatValue];
CLLocationDistance distance=1000;
MKCoordinateRegion newRegion=MKCoordinateRegionMakeWithDistance(myCoordinate,          distance,distance);
[self.mapView setRegion:region animated:YES];
MKPointAnnotation* annotation = [[MKPointAnnotation alloc] init];
annotation.coordinate = myCoordinate;
[self.mapView addAnnotation:annotation];  

}

2 个文本框是 latitude_value 和 longitude_value。
请帮忙....!

【问题讨论】:

  • 如果文本框是空白的,坐标将设置为 0,0,即位于大西洋(不是旧金山)中。 NSLog 文本框和 myCoordinate 的值(设置其经纬度后)。
  • 嗯,我用了下面的代码,我已经写好了,谢谢你的回复。
  • 你也可以检查一下吗,stackoverflow.com/questions/20143169/…

标签: ios mapkit mkannotation


【解决方案1】:

由于文本为空,它可能会转换为 0.000,0.000 左右,更好的方法是检查 [latitude_value.text isEqualToString:@""],如果没有则继续您的任务。让我知道这是否有帮助。

我想如果这失败了,你可以从地图中删除所有注释。

【讨论】:

【解决方案2】:

我知道了,通过以下代码。

if (latitude_value.text==NULL && longitude_value.text==NULL) {
    NSLog(@"nothing to display");
}

谢谢你@iRavi

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-11
    • 1970-01-01
    • 2016-06-09
    相关资源
    最近更新 更多