- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个应用程序,在启动时以特定位置为中心。
//Calculate and set new center point
CLLocationCoordinate2D zoomLocation = CLLocationCoordinate2DMake(<some lat>,<some long>);
MKCoordinateSpan span;
span.latitudeDelta = 0.08;
span.longitudeDelta = 0.08;
//MKCoordinateRegion region = MKCoordinateRegionMake(zoomLocation, span);
MKCoordinateRegion region = [mapView regionThatFits:MKCoordinateRegionMake(zoomLocation, span)];
[mapView setRegion:region animated:YES];
[self refreshMap];
对refreshMap的调用尝试计算 map 的边界框,以便我可以在数据库中查询相应的信息。
//Calculate map's bounding box
MKMapRect mapRect = [mapView visibleMapRect];
MKMapPoint cornerPointNE = MKMapPointMake(MKMapRectGetMaxX(mapRect), mapRect.origin.y);
CLLocationCoordinate2D upperLeft = MKCoordinateForMapPoint(cornerPointNE);
MKMapPoint cornerPointSW = MKMapPointMake(mapRect.origin.x, MKMapRectGetMaxY(mapRect));
CLLocationCoordinate2D lowerRight = MKCoordinateForMapPoint(cornerPointSW);
if( fabs(upperLeft.longitude) > 80.00 || fabs(lowerRight.longitude) > 80.0) {
return;
}
我看到的问题是,在 iOS 6 中,在应用程序启动时未正确计算 lowerRight 坐标,并且 map 数据不会刷新,因为 lowerRight.longitude > 80.0。左上角计算正确。
应用程序加载完成后,如果我平移 map ,即使是最轻微的边界框计算也是正确的。
此代码在 iOS 5 中运行良好。
除了mapView:regionDidChangeAnimated之外,还有我可以使用的回调吗? freshMap 的其余部分相当密集,我不想影响平移性能。
TIA
更新
我似乎找到了解决办法。而不是这样做
[mapView setRegion:region animated:YES];
我将"is"更改为“否”
[mapView setRegion:region animated:NO];
现在,下角可以在应用程序启动时正确计算。
最佳答案
您是否使用 MKMapRectOffset 或 Inset 稍微移动可见矩形。
而且我一直在重新阅读你的问题,我可能是错的;但是,我认为东北角是右上角,西南角是左下角。而您可能想要西北角和东南角。
我无法在 map 套件引用中确认mapRect的原点位于左上角。
关于ios6visibleMapRect不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13109430/
我尝试设置 MKMapView 对象的 visibleMapRect 属性,但结果映射 rect 与我预期的不完全一样。 这是我的代码: NSLog(@"current size %f %f", ma
我有一个 View 在两次具有相同值的 MKMapView 上调用 visibleMapRect 两次。第一次按预期加载( map 更改了 visibleMapRect,尽管这是预期的)。第二次我重新
如果我有一个 MKMapView 和一个 CLLocationCoordinate2D,你如何测试 map 的可见区域是否包含坐标? 最佳答案 最快的方法是使用内置的 Apple 功能,这将使这类事情
好吧,我知道我一定做错了什么,但该死的如果我能弄清楚, 基本上我试图在 regionDidChangeAnimated 调用中获取 VisibleMapRect,但看起来好像在实际设置值之前触发了此调
我正在尝试查看我拥有的某些范围(最大 x、最大 y、最小 x、最小 y 坐标)是否位于当前可见 map View 中。 我采用我的范围并创建一个MKMapRect: MKMapPoint upperL
我正在使用 MKMapView 的 visibleMapRect 属性来设置我应用程序中可见区域的边界。但是由于某些原因, map 的MKMapRect值不同 //setting the bounds
我通过测试发现MKMapView.visibleMapRect.origin.x向右(东)方向滚动 map 时会增加,MKMapView.visibleMapRect.origin.y向下滚动(南)方
我是一名优秀的程序员,十分优秀!