我遇到了同样的问题。看起来在iOS13中,某些操作(菜单和触摸)被委派给PDFView
的属性documentView
。因此,该视图类的方法混乱对我来说很有效,但它看起来像是在工作,但“肮脏的” hack。
在我的PDFView
子类中,添加了:
private func swizzleDocumentView() {
guard let d = documentView,let documentViewClass = object_getClass(d) else { return }
let sel = #selector(swizzled_canPerformAction(_:withSender:))
let meth = class_getInstanceMethod(object_getClass(self),sel)!
let imp = method_getImplementation(meth)
let selOriginal = #selector(canPerformAction(_:withSender:))
let methOriginal = class_getInstanceMethod(documentViewClass,selOriginal)!
method_setImplementation(methOriginal,imp)
}
@objc func swizzled_canPerformAction(_ action: Selector,withSender sender: Any?) -> Bool {
return false
}
,
找出您要选择的元素所属的类(UITextField,UITextView,UIWebView等),然后方法对其canPerformAction:withSender:
进行修饰。
本文链接:https://www.f2er.com/3159430.html