有没有办法使用NSUserDefaults在UITextView中保存文本?当我将它用于UITextField时,它可以正常工作。这是我用于UITextField的代码:
- (void)viewDidLoad {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *text1 = [defaults objectForKey:@"text1"];
textfield1.text = text1;
}
- (IBAction)saveButton {
[textfield1 resignFirstResponder];
NSString *text1 = [textfield1 text];
NSUserDefaults *myDefaults = [NSUserDefaults standardUserDefaults];
[myDefaults setObject:text1 forKey:@"text1"];
[myDefaults synchronize];
NSLog(@"Data Saved")
}
但是,如果我使用这种简单的方法来保存UITextView而不是UITextField,则视图中的数据不会保存。有什么建议吗?
答案 0 :(得分:1)
您用于UITextField的完全相同的代码应该适用于UITextView;方法text
适用于两者。
此代码对我有用:
[textView resignFirstResponder] ;
NSString* textViewContents = textView.text ;
NSLog(@"textViewContents is: %@", textViewContents) ;
NSUserDefaults* userDefaults = [NSUserDefaults standardUserDefaults] ;
[userDefaults setObject:textViewContents forKey:@"textView"] ;
[userDefaults synchronize] ;
我猜你的问题在于访问你的UITextView文本。 NSLog,正如我上面所做的那样,看看它是否符合您的预期。