共享扩展 ios swift
Share extension ios swift
我创建了一个包含一些按钮的共享扩展,并用 UIViewcontroller
继承了该扩展。当我创建那些 UIButtons
的 @IBAction
时,它永远不会在单击按钮时被调用。
import UIKit
import Social
class ShareViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
// override func isContentValid() -> Bool {
// // Do validation of contentText and/or NSExtensionContext attachments here
// return true
// }
//
// override func didSelectPost() {
// // This is called after the user selects Post. Do the upload of contentText and/or NSExtensionContext attachments.
//
// // Inform the host that we're done, so it un-blocks its UI. Note: Alternatively you could call super's -didSelectPost, which will similarly complete the extension context.
// self.extensionContext!.completeRequest(returningItems: [], completionHandler: nil)
// }
//
// override func configurationItems() -> [Any]! {
// // To add configuration options via table cells at the bottom of the sheet, return an array of SLComposeSheetConfigurationItem here.
// return []
// }
@IBAction func btnBackClicked(_ sender: Any) {
self.dismiss(animated: true, completion: nil)
}
@IBAction func btnCancleClicked(_ sender: Any) {
self.dismiss(animated: true, completion: nil)
}
@IBAction func btnSaveClicked(_ sender: Any) {
}
}
我认为正在调用您的按钮操作,只是调用 self.dismiss(animated: true, completion: nil)
不会真正关闭您的共享扩展。
关于这个,你应该使用:
self.extensionContext!.completeRequest(returningItems: nil, completionHandler: nil)
或
self.extensionContext!.cancelRequest(withError:NSError(domain: Bundle.main.bundleIdentifier!, code: 0))
我创建了一个包含一些按钮的共享扩展,并用 UIViewcontroller
继承了该扩展。当我创建那些 UIButtons
的 @IBAction
时,它永远不会在单击按钮时被调用。
import UIKit
import Social
class ShareViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
// override func isContentValid() -> Bool {
// // Do validation of contentText and/or NSExtensionContext attachments here
// return true
// }
//
// override func didSelectPost() {
// // This is called after the user selects Post. Do the upload of contentText and/or NSExtensionContext attachments.
//
// // Inform the host that we're done, so it un-blocks its UI. Note: Alternatively you could call super's -didSelectPost, which will similarly complete the extension context.
// self.extensionContext!.completeRequest(returningItems: [], completionHandler: nil)
// }
//
// override func configurationItems() -> [Any]! {
// // To add configuration options via table cells at the bottom of the sheet, return an array of SLComposeSheetConfigurationItem here.
// return []
// }
@IBAction func btnBackClicked(_ sender: Any) {
self.dismiss(animated: true, completion: nil)
}
@IBAction func btnCancleClicked(_ sender: Any) {
self.dismiss(animated: true, completion: nil)
}
@IBAction func btnSaveClicked(_ sender: Any) {
}
}
我认为正在调用您的按钮操作,只是调用 self.dismiss(animated: true, completion: nil)
不会真正关闭您的共享扩展。
关于这个
self.extensionContext!.completeRequest(returningItems: nil, completionHandler: nil)
或
self.extensionContext!.cancelRequest(withError:NSError(domain: Bundle.main.bundleIdentifier!, code: 0))