首页 > 解决方案 > 首次启动时 WKWebView 的可访问性

问题描述

我有一个 WKWebView,我想添加辅助功能。唯一的问题是当页面第一次加载时,页面中的按钮失去了可访问性焦点,但是如果我用手指点击屏幕,那么焦点就会出现。如何启用对 Webview 选择的关注

import WebKit
class ViewControllear: UIViewController, WKUIDelegate {
    
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        
        let myWebView:WKWebView = WKWebView(frame: CGRect(x:0, y:0, width: UIScreen.main.bounds.width, height:UIScreen.main.bounds.height))
        myWebView.uiDelegate = self
        self.view.addSubview(myWebView)
        
        
        //1. Load web site into my web view
        let myURL = URL(string: "https://www.apple.com")
        let myURLRequest:URLRequest = URLRequest(url: myURL!)
        myWebView.load(myURLRequest)
        
    }
    
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}

在此处输入图像描述

标签: swiftaccessibility

解决方案


尝试使用becomeFirstResponder()-

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
    
    let myWebView:WKWebView = WKWebView(frame: CGRect(x:0, y:0, width: UIScreen.main.bounds.width, height:UIScreen.main.bounds.height))
    myWebView.uiDelegate = self
    self.view.addSubview(myWebView)
    
    
    //1. Load web site into my web view
    let myURL = URL(string: "https://www.apple.com")
    let myURLRequest:URLRequest = URLRequest(url: myURL!)
    myWebView.load(myURLRequest)
    myWebView.becomeFirstResponder()
}

推荐阅读