Pass data from ViewController to NewViewController with DataModel

PassData

ViewController.h

#import “NewViewController.h”

#import “UserDetailDataModel.h”

ViewController.m

– (IBAction)buttonActionSubmit:(id)sender

{

    NSLog(@”buttonActionSubmit”);

    

    UserDetailDataModel *aUserDetailDataModel = [UserDetailDataModel new];

    aUserDetailDataModel.FirstName = self.textFieldFirstName.text;

    aUserDetailDataModel.LastName = self.textFieldLastName.text;

    aUserDetailDataModel.PhoneNumber = self.textFieldPhoneNumber.text;

    aUserDetailDataModel.City = self.textFieldCity.text;

    

    NewViewController *aNewViewController = [self.storyboard instantiateViewControllerWithIdentifier:@”NewViewController”];

    aNewViewController.bUserDetailDataModel = aUserDetailDataModel;

    [self.navigationController pushViewController:aNewViewController animated:YES];

}

NewViewController.h

#import “UserDetailDataModel.h”

@property (strong, nonatomic) UserDetailDataModel *bUserDetailDataModel;

NewViewController.m

– (void)viewDidLoad {

    [super viewDidLoad];

    

    NSLog(@”%@”,self.bUserDetailDataModel);

    NSLog(@”%@”,[self.bUserDetailDataModel asMutableDictionaryUserDetailDataModel]);

    

    // Do any additional setup after loading the view.

}

UserDetailDataModel.h

#import <Foundation/Foundation.h>

@interface UserDetailDataModel : NSObject

@property (strong, nonatomic) NSString *FirstName;

@property (strong, nonatomic) NSString *LastName;

@property (strong, nonatomic) NSString *PhoneNumber;

@property (strong, nonatomic) NSString *City;

– (NSMutableDictionary *)asMutableDictionaryUserDetailDataModel;

@end

UserDetailDataModel.m

#import “UserDetailDataModel.h”

@implementation UserDetailDataModel

– (NSMutableDictionary *)asMutableDictionaryUserDetailDataModel

{

    NSMutableDictionary *aDictionaryUserDetailDataModel = [NSMutableDictionary new];

    [aDictionaryUserDetailDataModel setObject:(self.FirstName == nil ? @””:self.FirstName) forKey:@”FirstName”];

    [aDictionaryUserDetailDataModel setObject:(self.LastName == nil ? @””:self.LastName) forKey:@”LastName”];

    [aDictionaryUserDetailDataModel setObject:(self.PhoneNumber == nil ? @””:self.PhoneNumber) forKey:@”PhoneNumber”];

    [aDictionaryUserDetailDataModel setObject:(self.City == nil ? @””:self.City) forKey:@”City”];

    

    return aDictionaryUserDetailDataModel;

}

@end

Click here to download Pass data from ViewController to NewViewController with DataModel Project

Leave a comment