miribsystematics-co-il-esridist

visibleLayers property in AGSDynamicMapServiceLayer seems to work differently in 1.8

Discussion created by miribsystematics-co-il-esridist Employee on May 4, 2011
Latest reply on May 16, 2011 by miribsystematics-co-il-esridist
Hi,

I'm trying to migrate an application from version 1.0 to 1.8 of the API for iOS.
In this application, we let the user select which layers he wants to show out of a list of 4 layers of a dynamic layer. Behind the scene it updates the visibleLayers array of this AGSDynamicMapServiceLayer. It worked fine in version 1.0 but it looks like it doesn't work as expected in ver. 1.8.
For instance, if I have only one layer that is shown on the map, when I try to turn this layer off, it doesn't do it, although  [self.dynamicLayer.visibleLayers count] = 0. The layer is still shown on the map.

In order to reproduce the problem, I put the project's code on ftp.plm.co.il/mirie
user: systematics
password: System2030

When the application opens, zoom in to a fairly small area (try to aim to the middle of Israel, near the sea). Then you choose the right most tab Bar item in the bottom screen. When it opens,
you choose layers to show by clicking on the name. Finally you have to click on the button in the upper right side of the view to execute it. Then try to click again to remove them. If you remove them in one hit, it doesn't remove any of the layers. If you remove each layer separately, it works OK except the last layer. 
The logic runs in viewDidAppear function in MapViewController.m
I hope I made myself clear. Maybe I do something wrong, but exactly the same code worked perfect in 1.0.

Thanks a lot in advance,
Miri

Outcomes