[英]iOS MKMapView not displaying map in the simulator
我刚刚开始学习 iPhone 的 iOS 开发,并遵循几个关于如何使用MapKit Framework
显示 mapView 的MapKit Framework
,我发现谷歌地图图块没有显示,我只得到一个空视图(灰色图块),在至少在 iPhone 模拟器中(我还没有在设备上尝试过)。
我也收到此错误消息:
/SourceCache/GoogleMobileMaps_Sim/GoogleMobileMaps-363.1.2/googlenav/mac/Loader.mm:235 服务器返回错误:403
我在为 Android 开发时找到了类似问题的解决方案,但没有为 iOS 开发。 有人可以帮我解决这个问题吗? 将MapKit
框架添加到项目应该足以让这个工作,或者我是否遗漏了一些我遵循的教程中没有提到的额外设置?
谢谢!
这是我使用的简单示例代码:
// ViewController.h
#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>
#import <CoreLocation/CoreLocation.h>
@interface ViewController : UIViewController
@property (strong, nonatomic) IBOutlet MKMapView *mapView;
@end
// ViewController.m
#import "ViewController.h"
@implementation ViewController
@synthesize mapView=_mapView;
- (void)viewDidUnload {
[super viewDidUnload];
[self setMapView:nil];
}
... more methods...
在 .xib 文件中,我将MKMapView
连接到文件的所有者 mapView 插座。 而此时,根据教程,我应该能够在运行模拟器时看到默认的美国地图,但是我总是收到我之前在调试区发布的错误,并且地图视图仅显示灰色空网格。
我有同样的问题 - 我的UIMapView
只显示网格,而不是实际的地图。 我退出模拟器,然后再次启动项目 - 现在它显示了地图! 似乎 iOS 模拟器有时确实会丢失连接,即使您可能已在计算机上连接。 谢谢大家的意见!
您是否将委托设置为文件所有者(自己)? 您是否还包含了 mapkit 框架和相关的头文件?
无论出于何种原因,我的 iOS 模拟器有时只是失去与互联网的连接(我的计算机已连接,但模拟器无法识别)。 一旦我退出并重新启动我的模拟器,我的地图就开始显示。
iOS 模拟器附带了官方地图应用程序。 打开它并验证它可以获取瓷砖,这可能是网络问题。 没有任何代码、插座、代表或任何地图应该显示地图数据的东西。
一个空的地图视图(灰色瓷砖),正如你所描述的,我在 iPhone 模拟器和设备上看到过尝试指定地图区域(例如,参见下面的代码),但是用户没有授予他们在应用程序中的位置的访问权限设置。 在模拟器上运行时删除这段代码解决了这个问题。
MKCoordinateRegion mapRegion;
mapRegion.center = self.mapView.userLocation.coordinate;
mapRegion.span.latitudeDelta = 0.02;
mapRegion.span.longitudeDelta = 0.02;
[self.mapView setRegion:mapRegion animated: YES];
万一有人在寻找解决方案。 网络问题对此问题负全部责任。 确保你的模拟器有网络连接,如果它能够加载默认的苹果地图,你就可以开始了。
这个问题有点棘手,因为它涉及很多情况,但对我来说,由于网络监控应用程序,它没有加载,例如。 Charles
,请确保您有互联网连接并且不受监控
我通过用手机连接到 WIFI 解决了这个问题。 我的手机中没有安装 SIM 卡,所以它只显示瓷砖。 只要确保你有网络连接。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.