1

アプリケーションを終了したときに注釈を保存し、アプリケーションを起動したときに再びポップアップするようにしたい....どうすればこれを可能にできますか? 何か案は?

-(IBAction)storeLocation:(id)sender{

    SparaPosition *position=[[SparaPosition alloc] initWithCoordinate:location];
    [mapView addAnnotation:position];
    savedPosition = location;

お願い...助けが必要です!
ありがとう!

4

1 に答える 1

2

注釈の座標を 1 つだけ保存する場合、最も簡単な方法はNSUserDefaultsを使用することです。

保存する:

NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
[ud setDouble:location.latitude forKey:@"savedCoordinate-latitude"];
[ud setDouble:location.longitude forKey:@"savedCoordinate-longitude"];
[ud setBool:YES forKey:@"savedCoordinate-exists"];
[ud synchronize];

ロードするには (たとえば、viewDidLoad で):

NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
if ([ud boolForKey:@"savedCoordinate-exists"])
{
    CLLocationCoordinate2D savedCoordinate;
    savedCoordinate.latitude = [ud doubleForKey:@"savedCoordinate-latitude"];
    savedCoordinate.longitude = [ud doubleForKey:@"savedCoordinate-longitude"];
    //create annotation object using savedCoordinate and add to map view...
}
于 2010-12-22T20:50:56.533 に答える