这是我在 iOS 上的第一个应用程序,我在 Android 上也做了同样的应用程序,没有出现任何问题,但现在我却遇到了这个问题。
当用户在 WebView 中单击“选择文件”时,手机会询问我要在哪里选择照片(或文件),如果我选择“关闭”,则整个 WebView 将关闭! 我如何管理这些事件? (下图显示了出现此问题的窗口) 同样的问题,如果我单击加载的附件,会出现一个向我显示图像的窗口,如果我长按图像,则会出现一些按钮(复制、下载或关闭)....如果我按其中一个按钮,WebView 就会关闭。 ..
后退按钮被禁用,因为在这种情况下用户无法使用后退,并且必须遵循 webview 强制的工作流程。
我尝试使用此代码,但仍然关闭 WebView
import UIKit
import WebKit
class MyWebViewController: UIViewController, WKUIDelegate, WKNavigationDelegate {
//Variable used for take received data from other ViewControllers
var urlString = String()
var callerString = String()
// MARK: - Properties
@IBOutlet weak var myWebView: WKWebView!
@IBOutlet weak var backButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
if callerString == "CodeController"{
backButton.isEnabled = false
} else {
backButton.isEnabled = true
}
myWebView.navigationDelegate = self
view.addSubview(myWebView)
// Do any additional setup after loading the view.
let url = URL(string: urlString)
myWebView.load(URLRequest(url : url!))
}
@IBAction func backButtonAction(_ sender: Any) {
if callerString != "CodeController"{
if myWebView.canGoBack{
myWebView.goBack()
}else {
//Go to Main View
self.navigationController?.popViewController(animated: true)
self.performSegue(withIdentifier: "backOnViewControllerSegue", sender: self)
}
}
}
这里有一些图像
,其中按钮
关闭整个WebView
以及如何以不同的方式管理它们?
最佳答案
这是 WkWebView 库的一个错误。 为了避免这种情况,只需将 OSX 和 XCODE 升级到最新版本即可解决问题。
不确定该问题是否适用于所有 iOS 操作系统,但适用于 iOS 12,也许还有 10
关于ios - WkWebView如何管理输入类型文件启动的事件和窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52516714/