所以在我的应用程序中,用户在地图上放置了图钉。我不知道的是如何在应用程序中保存图钉,这样当用户再次打开应用程序并转到 mapView 时,上次打开应用程序时掉到地图上的图钉仍然在地图。有谁知道我该怎么做?
问问题
72 次
1 回答
1
我建议你从那个别针那里得到坐标。您可以先将它们保存在 NSMutableArray 中。完成后,您可以像这样将此数组保存在 NSKeyedArchive 中
NSMutableData *data = [[NSMutableData alloc]init];
NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];
[archiver encodeObject:pinArray forKey:@"PinArray"];
[archiver finishEncoding];
[data writeToFile:archivePath atomically:YES];
BOOL success = [NSKeyedArchiver archiveRootObject:pinArray toFile:archivePath];
当您启动您的应用程序时,您可以阅读此存档:
if ([[NSFileManager defaultManager] fileExistsAtPath:archivePath]) {
NSData *data = [NSData dataWithContentsOfFile:archivePath];
NSMutableArray *pinCollection = [[NSMutableArray alloc] init];
if (data){
pinCollection = [NSKeyedUnarchiver unarchiveObjectWithData:data];
}
else pinCollection = nil;
return pinCollection;
}
并根据保存的坐标在地图上定位您的图钉。
于 2012-12-15T11:19:20.977 回答