簡體   English   中英

迅捷2.0 prepareForSegue無法正常工作

[英]swift 2.0 prepareForSegue not working

我正在嘗試在正在制作的應用程序中使用prepareForSegue prepare forSegue必須將一個類傳遞給單獨的視圖控制器。 這是prepareForSegue的代碼

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "createPieceSegue" {
        var svc = segue.destinationViewController as DestinationViewController!

        svc.pieceBaseClass = myClass
    }
}

這些是第一個視圖控制器繼承的超類:

class ViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource, UITableViewDataSource, UITableViewDelegate, UINavigationBarDelegate

並且目標視圖控制器僅從UIViewController繼承。 我一直得到的錯誤是: UIViewController is not convertible to'DestinationViewController'因此我無法在兩者之間傳遞數據。 此錯誤是什么意思,我該如何解決?

這意味着您尚未在情節提要中設置目標VC的自定義類。 因此,它只是一個UIViewController而不是您的子類。

您應該能夠使用可選鏈接。 您是否確定DestinationViewController實際上是UIViewController的子類?

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "createPieceSegue" {
    if let svc = segue.destinationViewController as? DestinationViewController {
        svc.pieceBaseClass = myClass
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM