ARCGIS IOS开发代表未连接/工作

时间:2013-08-15 21:29:28

标签: ios delegates maps arcgis

我是ARCGIS的新手,所以对我很轻松。

我的笔尖中有一个UIView,我将其更改为AGSMapView,然后我在UIViewController类中引用了该<ArcGIS/ArcGIS.h>类,其中还包含viewDidLoad包。好吧,我想到目前为止我已经做好了一切。

NSURL* url = [NSURL URLWithString:kTiledMapServiceURL]; AGSTiledMapServiceLayer *tiledLayer = [AGSTiledMapServiceLayer tiledMapServiceLayerWithURL:url]; [self.mapView addMapLayer:tiledLayer withName:@"kTiledMapServiceURL"]; 中运行以下代码后,我可以添加视图以使地图显示在模拟器上。

- (void)mapViewDidLoad:(AGSMapView *) mapView

从这里我想访问AGSMapViewLayerDelegate,以便我可以添加用户位置。

无论如何,我添加self.mapView.layerDelegate = self;并设置- (void)viewDidLoad { [super viewDidLoad]; NSURL* url = [NSURL URLWithString:@"http://services.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer"]; AGSTiledMapServiceLayer *tiledLayer = [AGSTiledMapServiceLayer tiledMapServiceLayerWithURL:url]; [self.mapView addMapLayer:tiledLayer withName:@"Basemap Tiled Layer"]; self.mapView.layerDelegate = self; } - (void)mapViewDidLoad:(AGSMapView *) mapView { [mapView.locationDisplay startDataSource]; } 。 现在我的代码看起来像下面的内容。

mapViewDidLoad

无论如何,无论出于何种原因,我都无法调用{{1}},或者ARCITE中的任何其他事件。我相信我正在做我应该做的一切,如果有人知道为什么会这样,我会非常感激他们。

1 个答案:

答案 0 :(得分:0)

嗯,您可能不会将协议用于View Controller,如:

ViewController: UIViewController <AGSMapViewLayerDelegate>