2011-01-01 3 views
2

В основном, я пытаюсь сохранить субтитры (адрес улицы) в аннотации. Когда приложение завершается и запускается снова, я хочу, чтобы этот сохраненный субтитр отображался в выноске аннотации. Что я делаю не так? Я просто не могу заставить его работать ...Загрузка субтитра сохраненной аннотации с помощью NSUserDefaults, когда viewDidLoad

storeLocation.m

- (void)setCoordinate:(CLLocationCoordinate2D)coor { 
        ............ 

        NSUserDefaults *userDef = [NSUserDefaults standardUserDefaults]; 
        [userDef setValue:subtitle forKey:@"SavedAddress"]; 
        [userDef synchronize]; 
        NSLog(@"Stored subtitle"); 
       } 

mainViewController.m

-(void)viewDidLoad { 
       NSString *savedAddress = [[NSUserDefaults standardUserDefaults] objectForKey:@"SavedAddress"]; 
    if (savedAddress) { 
    }     
} 

действительно ценят бы некоторую помощь с этого ... Спасибо заранее !

+0

можно утверждать, что «не работает «? Используете ли вы NSLog для печати значений и пытаетесь выяснить, какие сохраненные значения возвращаются? – sciritai

+0

Никакая строка не возвращается при повторном запуске приложения. – Krismutt

ответ

0

попробовать srtingForKey: вместо objectForKey:

NSString *savedAddress = [[NSUserDefaults standardUserDefaults] stringForKey:@"SavedAddress"]; 
0

Я решил ее с Условный оператор в

-(NSString *)subtitle. 

Так что:

-(NSString *)subtitle{ 

    NSUserDefaults *userDef = [NSUserDefaults standardUserDefaults]; 
    if ([userDef boolForKey:@"SavedAddress"]) { 
     NSString *savedAddress = [[NSUserDefaults standardUserDefaults] stringForKey:@"SavedAddress"]; 
     return savedAddress; 
    } 

    else { 
     return subtitle; 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^