WKWebview:从菜单中删除复制、查找、共享按钮并显示自定义
Posted
技术标签:
【中文标题】WKWebview:从菜单中删除复制、查找、共享按钮并显示自定义【英文标题】:WKWebview:Remove Copy,lookup,share button from Menu and show custom 【发布时间】:2017-06-26 06:47:00 【问题描述】:一旦用户选择文本,我想实现我的自定义 MenuController。我正在使用下面的代码来做到这一点,我将 WKWebview 子类化并在下面实现
override init(frame: CGRect, configuration: WKWebViewConfiguration)
super.init(frame: frame, configuration: WKWebViewConfiguration())
enableCustomMenu()
func enableCustomMenu()
let menuController = UIMenuController.shared
let testmenu = UIMenuItem(title: "Test", action: #selector(test))
menuController.menuItems = [testmenu]
func test()
var text = ""
self.evaluatejavascript("document.getSelection().toString()") (data, error) in
text = data as! String
print(text)
override func becomeFirstResponder() -> Bool
return true
override func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool
switch action
case #selector(test):
return true
default:
return false
这曾经对UIWebview
工作得很好,但在WKWebview
中,在canPerformAction
中我们不再获得copy, lookup and share
操作,因此这些人不会被删除。
【问题讨论】:
你找到解决办法了吗? 不幸的是没有 【参考方案1】:我也有这个问题,我发现你可以通过重写函数canPerformAction
来自定义你的WKwebview
这是关于它的article。
它对我有用! 希望对你有所帮助。
【讨论】:
链接可能会中断。你应该edit你的答案包括来自回答原始问题的链接的相关信息。以上是关于WKWebview:从菜单中删除复制、查找、共享按钮并显示自定义的主要内容,如果未能解决你的问题,请参考以下文章
关于在 Swift 中删除 WKWebView 中的 UIMenuController 默认 menuItems 的问题