title: How to update label in Second ViewController with information from First ViewController every second
body: <p>I have an app that has two ViewControllers. On the first there is a count of current speed in realtime through CLLocationManager. Also there is a label that shows current speed with update by timer (NSTimer). In second ViewController there is another Label, where this current speed has to be shown too. It shows it, but don't update. I tried to set second timer (different ways: in first VC, in second VC - there is always was an error or just nothing).</p>
  
  <p>Will be grateful for help, thanks!</p>
  
  <p><strong>First VC</strong></p>
  
  <pre><code>import UIKit
  import MapKit
  import CoreLocation
  
  class ViewController: UIViewController, CLLocationManagerDelegate {
  
      @IBOutlet weak var mapView: MKMapView!
      @IBOutlet weak var currentSpeedLabel: UILabel!
  
      var manager = CLLocationManager()                       
      var currentSpeed: CLLocationSpeed = CLLocationSpeed()   
      var timer = NSTimer()                                    
  
      override func viewDidLoad() {
          super.viewDidLoad()
  
          mapView.mapType = MKMapType.Hybrid                  
  
          trackingMe()                                        
  
      }
  
  
  
      override func didReceiveMemoryWarning() {
          super.didReceiveMemoryWarning()
      }
  
      @IBAction func HUDMapView(sender: AnyObject) {
  
          speedCount()
  
      }
  
      @IBAction func findMe(sender: AnyObject) {
  
          trackingMe()
      }
  
  
      func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
  
          let userLocation: CLLocation = locations[0] as CLLocation
  
          manager.stopUpdatingLocation()
  
          let location = CLLocationCoordinate2D(latitude: userLocation.coordinate.latitude, longitude: userLocation.coordinate.longitude)
          let span = MKCoordinateSpanMake(0.05, 0.05)
          let region = MKCoordinateRegion(center: location, span: span)
  
          mapView.setRegion(region, animated: true)
      }
  
  
      func trackingMe() {
  
          manager.delegate = self
          manager.desiredAccuracy = kCLLocationAccuracyBest
          manager.requestWhenInUseAuthorization()
          manager.startUpdatingLocation()
  
          mapView.showsUserLocation = true
  
          currentSpeedUpdate()
      }
  
  
      func currentSpeedUpdate() {
  
          timer = NSTimer.scheduledTimerWithTimeInterval(0.5, target: self, selector: Selector("speedCount"), userInfo: nil, repeats: true)
  
      }
  
  
      func speedCount() {
  
          currentSpeed = manager.location!.speed
          currentSpeedLabel.text = String(format: "%.0f km/h", currentSpeed * 3.6)
  
      }
  
      override func prepareForSegue(segue: (UIStoryboardSegue!), sender: AnyObject!) {
  
          let speedController = segue.destinationViewController as! speedViewController
  
          currentSpeed = manager.location!.speed
          speedController.showSpeed = currentSpeedLabel.text
  
      }
  
  } 
  </code></pre>
  
  <p><strong>Second VC</strong></p>
  
  <pre><code>    import UIKit
  
  class speedViewController: UIViewController {
  
      @IBOutlet weak var secondSpeedLabel: UILabel!
  
      var showSpeed: String!
  
      override func viewDidLoad() {
          super.viewDidLoad()
  
          // Do any additional setup after loading the view.
  
          secondSpeedLabel.text = showSpeed
  
      }
  
      override func didReceiveMemoryWarning() {
          super.didReceiveMemoryWarning()
          // Dispose of any resources that can be recreated.
      }
  
  
      @IBAction func back(sender: AnyObject) {
  
          self.dismissViewControllerAnimated(true, completion: nil)
  
      }
  
  }
  </code></pre>