2011-09-26 114 views
2

我已经使用以下代码保存从一个的UITextField一些输入显示数据:保存和与NSUserDefaults的

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    [defaults setObject:myTextField.text forKey:@"myTextFieldKey"]; 
    [defaults synchronize]; 

我想要显示在另一个视图控制器上一个UILabel这个保存的文本。

我尝试这样做:

myLabel.text = [[NSUserDefaults standardUserDefaults] objectForKey:@"myTextFieldKey"]; 

,但没有显示。任何帮助,这将是伟大的。谢谢。

+0

检查网点。也许'myLabel'或'myTextField'为零? – Eimantas

回答

4

嘛加载和保存代码是正确的,所以它看起来像这个问题是另一回事。

试试这个调试:

NSString *aValue = [[NSUserDefaults standardUserDefaults] objectForKey:@"myTextFieldKey"]; 
NSLog(@"Value from standardUserDefaults: %@", aValue); 

NSLog(@"Label: %@", myLabel); 
myLabel.text = aValue; 

现在你会看到,如果从NSUserDefaults值猎犬设置,如果标签被assinged。

+0

非常感谢。这是为我解决的。 – hanumanDev

1

尝试:

myLabel.text = [[NSUserDefaults standardUserDefaults] stringForKey:@"myTextFieldKey"]; 
1

检查myTextFieldmyLabel不是零。

3
[[NSUserDefaults standardUserDefaults] setValue:myTextField.text forKey:@"myTextFieldKey"]; 
[[NSUserDefaults standardUserDefaults] synchronize]; 

使用后valueForKey没有objectForKey

myLabel.text = [[NSUserDefaults standardUserDefaults] valueForKey:@"myTextFieldKey"];