Komal K Komal K - 5 months ago 99
iOS Question

how to send data from one ViewController to another which has SWRevealViewController

I have impleented SWRevealViewController for sideMenu. My project is is Swift and SWRevealViewController is in Objective-c. SWRevealViewController is not initial view Controller.there is one intial View Contoller(1VC) and it has Push segue on SWRevealViewController. another ViewController (2VC) is act as FrontView. I want to pass data from (1VC) to (2VC). but I could not find any way

enter image description here
Here is My Stroyboard

Answer

Two ways:

In case of segue

override func prepareForSegue(segue: UIStoryboardSegue!,sender: AnyObject!){         
//make sure that the segue is going to secondViewController
if segue.destinationViewController is secondViewController{
// now set a var that points to that new viewcontroller so you can call the method correctly
let nextController = (segue.destinationViewController as! secondViewController)
nextController.setResultLabel((String(myResult)))
 }
}

Otherwise in swift everything is public by default. Define variables outside the class

import UIKit

var placesArray: NSMutableArray!

class FirstViewController: UIViewController {
//
..
//
}

and then access it

import UIKit

class SecondViewController: UIViewController {
//
placesArray = [1, 2, 3]
//

}