繁体   English   中英

无法在prepareForSegue的目标视图中设置变量

[英]Can't set variable in destination view within prepareForSegue

我在我的应用程序中添加了一个tableView,其中显示了一些新闻项,单击后,新视图将加载一个显示完整文章的webview。 除了在目标视图中设置变量(newsURL)外,其他所有方法都可以正常工作。 我已经尝试了一段时间,但无法正常工作。

prepareForSegue函数:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "ShowNewsItem" {
        if let destination = segue.destinationViewController as? NewsViewControllerItem {
            if let indexPath = tableView.indexPathForSelectedRow()?.row {
                destination.newsURL = self.News![indexPath]["link"].stringValue
            }
        }
    }
}

我已经调试了它,除了第三行,其他所有东西都在工作,在那之后它根本就不继续,所以我猜目标是假/无。 我也尝试过let destination = NewsViewControllerItem()但这也无济于事。

我在var newsURL = String()定义了var newsURL = String() ,并且试图在viewDidLoad中输出它,但是它什么也没输出。

希望有人知道如何解决此问题,如果需要其他信息/代码,请告诉我。

因此,正如我们所讨论的那样,问题在于NewsViewControllerItem已嵌入导航控制器中,而您的父视图控制器已经嵌入了导航控制器中就不需要了。

删除NewsViewControllerItem的嵌入后,它应该可以正常工作。

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM