我已经制作了一个使用 arcgis 的应用程序,并且想要制作它以便我可以保存它使用的服务列表以及其他数组和对象,并在应用程序运行时重新加载它们。我看过 plist,但不知道如何解决这个问题。
我打算保存的是一组配置文件和一组服务。
每个配置文件都有一个名称、图例数组、缩放位置数组和要使用的地图服务。
每个服务都将具有名称、url 和服务类型的字符串类型。
我需要这样做,以便我可以在应用程序运行时更改配置文件和数组,并且更改在保存数据后生效。
plist 非常简单,您可以将项目组织成数组、字典、NSNumbers、字符串等。这只是确定将什么放在哪里的问题。这是我要做的一个模型:
<array>
<dict>
<key>userName</key>
<string>myUserName</string>
<key>legendArray</key>
<array/>
<key>zoomLocations</key>
<array/>
<key>services</key>
<array>
<dict>
<key>url</key>
<string>http://www.google.com</string>
<key>type</key>
<string>someServiceType</string>
</dict>
</array>
</dict>
</array>
如果您不知道,上面的 XML 是 Xcode 在您编辑 plist 时生成的,仅此而已它是一个 XML 文件 :) 如果您更喜欢标准视图,这里是一个屏幕截图:
这将创建一个包含字典的数组,每个字典包含一个用于用户名的字符串、一个图例数组、一个用于缩放位置的数组,另一个包含用于 url 和服务类型的字符串的字典数组。
然后就重新加载数据而言,很难说,因为您没有指定如何显示数据。但是,例如,如果您使用的是表格视图,您所要做的就是[self.tableView reloadData];
在完成保存新数据后调用。(假设 plist 是您的表数据源)
如果您需要更多帮助来学习如何将 .plist 保存到文档目录,这里有一个教程:http: //iosameer.blogspot.com/2012/08/handling-nsdocumentdirectory-of-your.html