我正在努力将以下代码转换为在UIWebView中获取平移的单词。它在UITextView中运行良好。但是,我找不到任何会在UIWebView中执行此操作的内容。我知道它必须存在,因为我可以长时间在UIWebView中加载的网站中按下一个单词并将其选中。我想以编程方式返回这个词。最后,我想在ePub或PDF中执行相同的操作。任何帮助表示赞赏。
ngAfterViewInit
答案 0 :(得分:0)
嘿,您可以添加UIMenuViewController并覆盖复制选项。我做了一个带有UIWebview扩展的小演示,这是我的整个代码
extension UIWebView {
override open var canBecomeFirstResponder: Bool {
return true
}
override open func copy(_ sender: Any?) {
let board = UIPasteboard.general
let selectedString = self.stringByEvaluatingJavaScript(from: "window.getSelection().toString()")
board.string = selectedString
let menu = UIMenuController.shared
menu.setMenuVisible(false, animated: true)
}
override open func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool {
if action == #selector(UIResponderStandardEditActions.copy(_:)) {
return true
}
return false
}
}
我只是在webview中加载网页。你可以添加这个扩展,剩下的应该可以工作:)。