//保存数据 - (IBAction)save:(id)sender { // Hide the keyboard [firstNameTextField resignFirstResponder]; [lastNameTextField resignFirstResponder]; [ageTextField resignFirstResponder]; // Create strings and integer to store the text info NSString *firstName = [firstNameTextField text]; NSString *lastName = [lastNameTextField text]; int age = [[ageTextField text] integerValue]; // Create instances of NSData UIImage *contactImage = contactImageView.image; NSData *imageData = UIImageJPEGRepresentation(contactImage, 100); // Store the data NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; [defaults setObject:firstName forKey:@"firstName"]; [defaults setObject:lastName forKey:@"lastname"]; [defaults setInteger:age forKey:@"age"]; [defaults setObject:imageData forKey:@"image"]; [defaults synchronize]; NSLog(@"Data saved"); } //读取数据 - (void)viewDidLoad { // Get the stored data before the view loads NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSString *firstName = [defaults objectForKey:@"firstName"]; NSString *lastName = [defaults objectForKey:@"lastname"]; int age = [defaults integerForKey:@"age"]; NSString *ageString = [NSString stringWithFormat:@"%i",age]; NSData *imageData = [defaults dataForKey:@"image"]; UIImage *contactImage = [UIImage imageWithData:imageData]; // Update the UI elements with the saved data firstNameTextField.text = firstName; lastNameTextField.text = lastName; ageTextField.text = ageString; contactImageView.image = contactImage; [super viewDidLoad]; }