swift - 无法将“NSSplitViewController”(0x7fff8fbe20c8)类型的值转换为“AppName.ViewController”(0x100049988)
问题描述
我创建了一个可可网络浏览器。我在工具栏中添加了一个NSSearchfield
。我正在测试它然后我得到并且错误说Thread 1: Signal SIGART
。在我的调试器中,它说
Could not cast value of type 'NSSplitViewController' (0x7fff8fbe20c8) to 'AppName.ViewController' (0x100049988).
这是因为我将窗口控制器链接到拆分视图控制器而不是视图控制器。这是我遇到错误的代码
var viewController: ViewController {
get {
return self.window!.contentViewController! as! ViewController
// Error here
}
}
我试过这样做
var SplitView: SplitViewContorller {
get {
return self.window!.contentViewController! as! SplitVC
// Error here
}
}
但是后来我收到很多错误说
Value of type 'SplitVC' has no member 'webView'
在这段代码中
var urlStr = searchFieldToolBar.stringValue
if urlStr.hasPrefix("https://") {
let url = NSURL(string: urlStr)
let req = NSURLRequest(url:url! as URL)
self.viewController.webView.load(req as URLRequest)
}
我不知道如何解决这个问题。
你能帮我么
解决方案
推荐阅读
- qt - 在全屏和窗口模式之间切换
- java - 为什么在将 Apache Tomcat 7 更新到 9 后出现 NoClassDefFoundError?
- python - Python 代码在 Pycharm 中不起作用,但在 Jupiter notebook 中执行良好
- c++ - 为什么在 C++ 中使用 delete 后指针不为 NULL
- java - 在单独的进程中打开 url
- azure-devops - 为什么 VSTS 构建“Visual Studio 测试”步骤找不到我的 NUnit 测试?
- c++ - (C++) 我的自定义数组无法初始化(编译错误)
- blockchain - 使用 Web3 1.0 调用智能合约方法
- python-3.x - 为什么我们不能简单地打印“print(zip(a,b))”
- pentaho - 合并行(差异)是逐行比较,而不是一行与其他表的整行