我的应用实现了Share
扩展。我可以在Safari中分享我的应用程序的任何链接,一旦我点击POST
分享视图中的SLComposeServiceViewController
按钮消失,但Safari的屏幕将被冻结。我需要强制关闭Safari再次使用它。
这就是didSelectPost()
的样子:
override func didSelectPost() {
AddToWishlistNetworkClient.sharedClient().createItemForWishlistIdentifier(selectedWishlist!.identifier, addressOrUrl: composePropertyUrlSheet.value, comment: contentText, completionBlock: nil)
}
答案 0 :(得分:0)
在didSelectPost()
内执行所有操作后,completeRequestReturningItems:
方法必须将被调用,以便主机应用可以取消阻止其用户界面。
AddToWishlistNetworkClient.sharedClient().createItemForWishlistIdentifier(selectedWishlist!.identifier, addressOrUrl: composePropertyUrlSheet.value, comment: contentText, completionBlock: { error in
self.extensionContext?.completeRequestReturningItems([], completionHandler: nil)
})
答案 1 :(得分:0)
根据上一个答案的建议,在你的didSelectPost()结束时一定要打电话
self.extensionContext?.completeRequest(returningItems: [], completionHandler:nil)
这将取消Safari。