Tuesday, 12 February 2013

Storing an Array using NSUserDefaults.




- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];


currentDefaults = [NSUserDefaults standardUserDefaults];

    NSData *dataRepresentingSavedArray0 = [currentDefaults objectForKey:@"savedImage"];
    NSMutableArray *oldSavedArray0 = [NSKeyedUnarchiver unarchiveObjectWithData:dataRepresentingSavedArray0];
    imageArray = [[NSMutableArray alloc] initWithArray:oldSavedArray0];
    NSLog(@"image-- %d",[imageArray count]);
    
    
    NSData *dataRepresentingSavedArray = [currentDefaults objectForKey:@"savedName"];
    NSMutableArray *oldSavedArray = [NSKeyedUnarchiver unarchiveObjectWithData:dataRepresentingSavedArray];
    nameArray = [[NSMutableArray alloc] initWithArray:oldSavedArray];
    NSLog(@"name-- %d",[nameArray count]);

NSData *imgData = (NSData*)[imageArray objectAtIndex:p];
        UIImage* imge = [[UIImage alloc] initWithData:imgData];
        imageView.image=imge;
        nameField.text=[nameArray objectAtIndex:p];
}

-(IBAction)SaveButton:(id)sender{

 NSData *ImageData1 = UIImageJPEGRepresentation(imageView.image, 0.9);

[imageArray addObject:ImageData1];
 [nameArray addObject:nameField.text];

 [currentDefaults setObject:[NSKeyedArchiver archivedDataWithRootObject:imageArray] forKey:@"savedImage"];
    [currentDefaults setObject:[NSKeyedArchiver archivedDataWithRootObject:nameArray] forKey:@"savedName"];

}




No comments:

Post a Comment