kun*_*iko 6 uiactivityviewcontroller ios10 xcode8
我创建了一个简单的应用程序,使用UIActivityViewController如下.
let text = "Test Text"
let printData = UISimpleTextPrintFormatter(text: text)
let vc = UIActivityViewController(activityItems: [text, printData], applicationActivities: nil)
vc.completionWithItemsHandler = { (type,completed,items,error) in
print("completed. type=\(type) completed=\(completed) items=\(items) error=\(error)")
}
vc.modalPresentationStyle = .popover
vc.popoverPresentationController?.sourceView = self.openActivityButton
vc.popoverPresentationController?.sourceRect = self.openActivityButton.bounds
vc.popoverPresentationController?.permittedArrowDirections = .up
vc.popoverPresentationController?.delegate = self
self.present(vc, animated: true) { () in
}
Run Code Online (Sandbox Code Playgroud)
我在iOS 10(Xcode 8.0 beta 6)上运行此应用程序.
completionWithItemsHandler会调用它.completionWithItemsHandler会调用它.completionWithItemsHandler会调用它.completionWithItemsHandler是不叫.这种奇怪的行为发生在iOS 10上,但没有发生在iOS9上(处理程序是在iOS9上调用的)
这是iOS 10的错误吗?如果是这样,是否有任何变通方法来检测UIActivityController被解雇?
我在https://github.com/kunichiko/ios10-activity-bug上推了这个示例应用程序
小智 6
我遇到了类似的问题.在我的情况下,我注意到没有调用完成处理程序,因为UIActivityController已被解除并取消分配.我所做的只是添加一个属性来保存一个强引用并将其设置为零.然后正确调用完成处理程序.
| 归档时间: |
|
| 查看次数: |
2914 次 |
| 最近记录: |