delegate returns nil tvOS
<p>I am trying to figure out from long time. Can someone tell me why my delegate method is never called. Its a tvOS project but i believe it should work as simple iOS app. On click of button i have a popup table view and on select i am trying to update button label with selected option.  </p>

<pre><code>protocol PopupSelectionHandlerProtocol{
    func UpdateSelected(data:String)
}

class PopupViewController: UIViewController, UITableViewDataSource,UITableViewDelegate {

    @IBOutlet weak var myTable: UITableView!

    let months = [1,2,3,4,5,6,7,8,9,10,11,12]
    let days = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31]
    let yearsRange = [2015,2016,2017,2018,2019,2020]
    var popupType:String!
    var delegate:PopupSelectionHandlerProtocol?
    override func viewDidLoad() {
        super.viewDidLoad()
        popupType = "months"
    }


    func numberOfSectionsInTableView(tableView: UITableView) -&gt; Int {

        return 1
    }

    func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -&gt; Int {
        if (popupType == "months"){
            return 12
        }else if (popupType == "days"){
            return 31
        }else if (popupType == "years")
        {
            return 6
        }
        return 10
    }

    func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -&gt; UITableViewCell {
        let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath)

        cell.textLabel?.text = String(months[indexPath.row])
        return cell

    }
    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
        print(tableView.cellForRowAtIndexPath(indexPath)?.textLabel?.text)
        delegate?.UpdateSelected((tableView.cellForRowAtIndexPath(indexPath)?.textLabel?.text)!)
        self.dismissViewControllerAnimated(true, completion: nil)
    }


}
</code></pre>

<p>And then This - </p>

<pre><code>class VacationPlannerController: UIViewController,PopupSelectionHandlerProtocol {

    @IBOutlet weak var fromMonth: UIButton!
    override func viewDidLoad() {
        super.viewDidLoad()
        let popupDelegate = PopupViewController()
        popupDelegate.delegate = self
    }

    func UpdateSelected(data:String){
        print("Inside UpdateSelected VacationPlannerController \(data)")
        fromMonth.titleLabel?.text = data
    }

}
</code></pre>