ios - 无法在prepareForSegue中的目标 View 中设置变量

标签 ios swift xcode6

我正在向我的应用程序添加一个 tableView,它显示一些新闻项目,单击后,一个新 View 将加载一个显示完整文章的 webview。除了在目标 View 中设置变量(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
            }
        }
    }
}

我已经调试了它,除了第三行之外,一切都正常,之后它就不再继续,所以我猜测目的地是 false/nil。我也尝试过这样做 let destination = NewsViewControllerItem() 但这也没有帮助。

我在 NewsViewControllerItem 中定义了 var newsURL = String() ,我试图在 viewDidLoad 中输出它,但它没有输出任何内容。

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

最佳答案

因此,正如我们所讨论的,问题在于 NewsViewControllerItem 嵌入在导航 Controller 中,而这是不需要的,因为您的父 View Controller 已经嵌入在导航 Controller 中。

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

希望这有帮助。

关于ios - 无法在prepareForSegue中的目标 View 中设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31930923/

相关文章:

ios - 如何从 Swift 中的 SecItemCopyMatching 返回多个匹配项

ios - AVAudioSession 在某些蓝牙设备上不工作

ios - swift 警告 : A lonng-running operation is being executed on the main thread

ios - XCode 找不到错误的 .app 文件

ios - 快速像素采样

设备旋转后的 iOS 按钮点击区域

ios - 带有静态链接的 libz dylib 不支持 iOS 7

ios - 是否可以使用约束将 View 高度指定为父 View 的百分比,同时也限制最大结果高度?

ios - 如何在 Swift 中获取类的方法

ios - swift 中的 C 数组内存释放