uimenucontroller - PDFKit bug,需要禁用 UIMenuItems
问题描述
我正在尝试禁用 PDFKit 中的 UIMenuItems。我已经实施
override func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool {
return false
}
但是 MenuItems Copy和Select All仍然处于活动状态。我想禁用它们的主要原因是因为全选会导致较大的 pdf 文档出现致命的内存错误。
malloc:无法分配区域
我已经提交了一个错误报告,但同时我需要禁用菜单项。
注意:如果 pdfDocument.string 足够大,以下任何调用都会导致崩溃。
- pdfView.selectAll()
- UIMenuController.selectAll
- 让字符串 = pdfDocument.string
解决方案
我需要在实际的 PDFView 上覆盖canPerformAction 。我是在我的 VC 中做的。
class MyPDFView: PDFView {
override func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool {
return false
}
}
推荐阅读
- c# - 在一个 datagridview 中合并两个查询
- javascript - Fullcalendar 3 - 当前日期边框颜色
- python - 选择性读取包含混合类型列的 pandas 数据框
- javascript - 快速滚动动画 jQuery
- security - 数据在物联网设备的 RAM 中保留多长时间?
- wordpress - 多语言 WordPress Woocommerce
- javascript - 单击服务复选框时隐藏和显示活动复选框
- magento - Magento 2 电子邮件发件人不正确
- sql - 在 oracle 中请求拆分功能
- c# - 在 Task.Run 上使用 await 会导致“访问已处置的闭包”错误吗?