0

I'm not able to pass values from one viewController to the next in objective-C (Xcode). The variable's value in the next viewController is coming as null. I've no idea what I'm missing here and I'm totally stuck. Please help me out.

Here's my code 1st viewController(detailsViewController.h):

    @property (weak, nonatomic) IBOutlet UITextField *fromTextField;

.m

ResultViewController *resultObject=[self.storyboard instantiateViewControllerWithIdentifier:@"ResultViewController"];
resultObject.fromValueFromDVC=self.fromTextField.text;
[self presentViewController:resultObject animated:YES completion:nil];

2nd viewController(ResultViewController.h)

    @interface ResultViewController : UIViewController<NSXMLParserDelegate>
    @property (weak, nonatomic) IBOutlet UILabel *fromLabel;
    @property(strong,nonatomic) NSString *fromValueFromDVC;

.m

    - (void)viewDidLoad
    {

   [super viewDidLoad];        
    self.fromLabel.text=self.fromValueFromDVC;
    }

Please help. Thanks a lot in advance!

rmaddy
  • 314,917
  • 42
  • 532
  • 579
Parag Sinha
  • 79
  • 2
  • 7

1 Answers1

2

in your prepareForSegue method use segue.destinationViewController. instead of [self.storyboard instantiateViewControllerWithIdentifier:@"ResultViewController"];

(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{



 if ([[segue identifier] isEqualToString:@"YOUR_SEGUE_NAME_HERE"])
   {
    ResultViewController *resultObject= segue.destinationViewController
    resultObject.fromValueFromDVC=self.fromTextField.text;

   // If you have the segue rightly set up you don't need this like here.
    **[self presentViewController:resultObject animated:YES completion:nil];**
   }

  }

Hope it helps.

Harish
  • 1,469
  • 16
  • 43