只能声明实例方法@IBAction | Xcode 错误 |斯威夫特 5

问题描述

这是我的代码不建议删除 IBAction 我是一个初学者制作浏览器。我也是 这个程序很新:

import Cocoa
import WebKit
class ViewController: NSViewController,WKNavigationDelegate {



@IBOutlet weak var webView: WKWebView!
override func viewDidLoad() {
    super.viewDidLoad()
    webView.navigationDelegate = self
    // Do any additional setup after loading the view.
}

override var representedObject: Any? {
    didSet {
    
    }
}




@IBAction func didEnterKeyTapped( sender: NSTextField){
    let urlString = sender.stringValue
guard let url  = URL(string: urlString) else {return}
    let urlRequest = URLRequest(url: url)
    webView.load(urlRequest)
    
    
    @IBAction func didnavigationButtonTapped ( sender: NSSegmentedControl){
        if sender.selectedSegment == 0 {
            webView.goBack()
        }else {
            webView.Forward()
        }
        
        
        
        
    }





func webView(_ webView: WKWebView,didCommit navigation: WKNavigation!) {
    let currentUrl = webView.url?.absoluteString ?? ""
    guard let windowController = view.window?.windowController as? WindowController else {return}
    let textField = windowController.urlTextField
    textField?.stringValue = currentUrl
}

}

}

解决方法

您在 ViewController 类之外声明了 @IBActions。 IBAction 必须是类的成员。移动类中的 IBActions 以修复编译器错误。

您代码中的另一个问题是您在 didNavigationButtonTapped IBAction 中声明了 didEnterKeyTapped IBAction。这两个 IBAction 应该是独立的函数,例如:

@IBAction func didEnterKeyTapped( sender: NSTextField){
    let urlString = sender.stringValue
    
    guard let url  = URL(string: urlString) else {return}
            
    let urlRequest = URLRequest(url: url)
    webView.load(urlRequest)
}

@IBAction func didnavigationButtonTapped ( sender: NSSegmentedControl) {
    if sender.selectedSegment == 0 {
        webView.goBack()
    }else {
        webView.Forward()
    }
}

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...