Search code examples
uitableviewuipopovercontrollerarcgisesri

Table View in Popover Won't Scroll When Over AGSMapView


I'm using the ArcGIS Runtime SDK for iOS, and I have a subclass of UITableViewController that I'm presenting in a popover; the base view of the main view controller being displayed is an AGSMapView with an AGSGraphicsLayer (AGSSimpleRenderer attached). When the popover is presented, there is no ability to select a cell, and scrolling is extremely limited. When I change the base view controller's view from an AGSMapView to a blank UIView, the table view in the popover works perfectly.

My viewDidLoad: is as follows:

[super viewDidLoad];

self.mapView.layerDelegate = self;
self.mapView.calloutDelegate = self;
self.mapView.callout.delegate = self;

// Create an instance of a tiled map service layer.
AGSTiledMapServiceLayer *tiledLayer = [[AGSTiledMapServiceLayer alloc] initWithURL:[NSURL URLWithString:@"http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"]];

// Add it to the map view.
[self.mapView addMapLayer:tiledLayer withName:@"Tiled Layer"];

AGSSimpleMarkerSymbol *simpleMarkerSymbol = [AGSSimpleMarkerSymbol simpleMarkerSymbol];
self.graphicsLayer.renderer = [AGSSimpleRenderer simpleRendererWithSymbol:simpleMarkerSymbol];

// Add graphics layer to the map view.
[self.mapView addMapLayer:self.graphicsLayer withName:@"Graphics Layer"];

Could this be a bug in the AGSMapView implementation, and if so, how do I go about reporting it?

Thanks in advance.

Related: Sister Question in the Esri Forums

EDIT

I determined that the issue is fairly difficult to reproduce, so I added mapViewDidLoad: to add current location. This causes the issue to occur without fail. My code is as follows:

- (void)mapViewDidLoad:(AGSMapView *)mapView {
    [self.mapView.locationDisplay startDataSource];
    self.mapView.locationDisplay.autoPanMode = AGSLocationDisplayAutoPanModeDefault;
}

Solution

  • This was revealed to be a bug in the ArcGIS Runtime SDK for iOS. Esri Support contacted me and told me that it will be fixed in the next release.