3 Jan 2017

Core Data Xcode below 8.0 Version Save & Fetch


Core Data Xcode below 8.0 Version Save & Fetch...


@property AppDelegate *appDelg;
@property NSEntityDescription *namesED;


@implementation enterDataViewController


- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    self.appDelg = (AppDelegate *)[[UIApplication sharedApplication]delegate];

    self.namesED = [NSEntityDescription entityForName:@"Name" inManagedObjectContext:self.appDelg.managedObjectContext];
}

- (void)saveData {
    
    NSManagedObject *managedObject = [[NSManagedObject alloc]initWithEntity:self.namesED insertIntoManagedObjectContext:self.appDelg.managedObjectContext];
    [managedObject setValue:self.enterText.text forKey:@"enterName"];
    
    NSError *errorObj;
    [self.appDelg.managedObjectContext save:&errorObj];
    
    if (errorObj) {
        UIAlertController *alertCon = [UIAlertController alertControllerWithTitle:@"Error" message:@"Error Occured" preferredStyle:UIAlertControllerStyleAlert];
        UIAlertAction *alertAction = [UIAlertAction actionWithTitle:@"OK" style:UIAlertActionStyleDefault handler:nil];
        [alertCon addAction:alertAction];
    }
    else {
        NSLog(@"Saved successfully..");
    }
    TableViewController *viewC = [self.storyboard instantiateViewControllerWithIdentifier:@"TableViewControllerID"];
    [self.navigationController pushViewController:viewC animated:YES];
}

- (IBAction)getStoredData:(id)sender
{
    
    NSFetchRequest * fetReq = [NSFetchRequest fetchRequestWithEntityName:@"Name"];
    
    NSError * fetchErrorObj;
    NSArray * storedData = [self.appDelg.managedObjectContext executeFetchRequest:fetReq error:&fetchErrorObj];
    NSLog(@"array count is %lu",storedData.count);
    
    for (int i=0; i<storedData.count; i++)
    {
        NSManagedObject * storedManagedObj = [storedData objectAtIndex:i];
        
        if ([[storedManagedObj valueForKey:@"enterName"] isEqualToString:self.enterText.text]) {
            NSLog(@"enterName is %@",[storedManagedObj valueForKey:@"enterName"]);
            
            NSString *savedDataStr = [storedManagedObj valueForKey:@"enterName"];
            _savedDataLbl.text = savedDataStr;
            
            NSMutableArray *array = [NSMutableArray array];
            for (int i = 0; i < [savedDataStr length]; i++) {
                NSString *ch = [savedDataStr substringWithRange:NSMakeRange(i, 1)];
                [array addObject:ch];
                
            }
            NSLog(@"arr -- %@",array);
        }
    }
 }

@end

No comments:

Post a Comment

Recent Posts

Codable demo

Link: https://www.dropbox.com/s/kw7c1kgv1628bh7/codableDemo.zip?dl=0