繁体   English   中英

iOS MKMapView 不在模拟器中显示地图

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM