title: dismiss share extension custom viewcontroller
body: <p>I am trying to create a custom view controller to be used with a share extension. Everything works, but I don't know how to dismiss the custom view controller.  Basically I launch my share extension from safari and want to completely dismiss this and return back to the safari view. I know this should not be hard, but I am new to share extensions.  Below is my base code.  Thanks.  Bob</p>
  
  <pre><code>//
  //  ShareViewController.swift
  //  ShareExtension
  
  
  import UIKit
  import Social
  import MobileCoreServices
  
  class ShareViewController: UIViewController {
      private var url: NSURL?
  
  
      @IBAction func backButton(_ sender: Any) {
          print("back button pressed")
  
         self.dismiss(animated: true, completion: nil)
      }
  
  
      override func viewDidLoad()  {
          super.viewDidLoad()
      }
  
  
      private func getURL() {
          let extensionItem = extensionContext?.inputItems.first as! NSExtensionItem
          let itemProvider = extensionItem.attachments?.first as! NSItemProvider
          let propertyList = String(kUTTypePropertyList)
          if itemProvider.hasItemConformingToTypeIdentifier(propertyList) {
              itemProvider.loadItem(forTypeIdentifier: propertyList, options: nil, completionHandler: { (item, error) -&gt; Void in
                  guard let dictionary = item as? NSDictionary else { return }
                  OperationQueue.main.addOperation {
                      if let results = dictionary[NSExtensionJavaScriptPreprocessingResultsKey] as? NSDictionary,
                          let urlString = results["URL"] as? String,
                          let url = NSURL(string: urlString) {
                          self.url = url
                      }
                  }
              })
          } else {
              print("error")
          }
      }
  }
  </code></pre>