let storyboard = UIStoryboard(name: "Main", bundle: nil)
let secondViewController = 
storyboard.instantiateViewController(withIdentifier: 
"secondViewController") as! SecondViewController
self.present(secondViewController, animated: true, 
completion: nil)
             
        Blur Background für eine View in Swift:
Dieser Code muss in die viewDidLoad Funktion:
view.backgroundColor = .clear
let blurEffect = UIBlurEffect(style: .extralight)
let blurView = UIVisualEffectView(effect: blurEffect)
blurView.translatesAutoresizingMaskIntoConstraints = false
view.insertSubview(blurView, at: 0)
NSLayoutConstraint.activate([
  blurView.topAnchor.constraint(equalTo: view.topAnchor),
  blurView.leadingAnchor.constraint(equalTo: view.leadingAnchor),
  blurView.heightAnchor.constraint(equalTo: view.heightAnchor),
  blurView.widthAnchor.constraint(equalTo: view.widthAnchor)
])
             
        Attention: Application ID changes with every Appstart since iOS 8
do {
    let documentsURL = try FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false)
    let docs = try FileManager.default.contentsOfDirectory(at: documentsURL, includingPropertiesForKeys: [], options:  [.skipsHiddenFiles, .skipsSubdirectoryDescendants])
    let images = docs.filter{ $0.pathExtension == "xxx" }
    print(images)
} catch {
    print(error)
}
             
            //Delete Image from Notification
    if lentItems.imageURL == nil {
        //no image to delete
    } else {
        let fileManager = FileManager.default
        do {
            try fileManager.removeItem(atPath: lentItems.imageURL!)
        } catch {
            print("Could not delete Image: \(error)")
        }
    }
             
            do {
        let attachment = try UNNotificationAttachment(identifier: "bild", url: imageURL, options: nil)
        content.attachments = [attachment ]
    } catch {
        print("Attachment could not be loaded" )
    }
             
            // Create a URL
    let documentsURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first
    let imageURL = documentsURL?.appendingPathComponent("\(String(describing: title)).png")
    // save image to URL
    if thumbnailData == nil {
        print("No Picture")
    } else {
        let notificationImage = UIImage(data: thumbnailData as! Data) // or wherever you have your UIImage
        do {
            try UIImagePNGRepresentation(notificationImage!)?.write(to: notificationImageURL!)                    
        } catch {
            print("Couldnt save image" )
        }
    }
             
        In viewDidLoad:
//Dissmiss Keyboard
let tap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(self.dismissKeyboard))
view.addGestureRecognizer(tap)
Function:
//Dismiss Keyboard
@objc func dismissKeyboard() {
    view.endEditing(true)
}
             
            //MARK: Contacts
    func checkContactsStatus() {
        let status = CNContactStore.authorizationStatus(for: .contacts)
        if status == .denied || status == .restricted {
            presentSettingsActionSheet()
            return
        }
    }
   //Ask for Contact Permissions
    func presentSettingsActionSheet() {
        let alert = UIAlertController(title: "Permission to Contacts", message: "This app needs access to contacts in order to ...", preferredStyle: .actionSheet)
        alert.addAction(UIAlertAction(title: "Go to Settings", style: .default) { _ in
            let url = URL(string: UIApplicationOpenSettingsURLString)!
            UIApplication.shared.open(url)
        })
        alert.addAction(UIAlertAction(title: "Cancel", style: .cancel))
        present(alert, animated: true)
    }
    func contactPicker(_ picker: CNContactPickerViewController,
                       didSelect contactProperty: CNContactProperty) {
    }
    func contactPicker(_ picker: CNContactPickerViewController, didSelect contact: CNContact) {
        // You can fetch selected name and number in the following way
        // user name
        let userName:String = contact.givenName
        let surName:String = contact.familyName
        let fullName:String = userName + " " + surName
        print(fullName)
        contactTextField.text = fullName
//         user phone number
//        let userPhoneNumbers:[CNLabeledValue<CNPhoneNumber>] = contact.phoneNumbers
//        let firstPhoneNumber:CNPhoneNumber = userPhoneNumbers[0].value
        // user phone number string
//        let primaryPhoneNumberStr:String = firstPhoneNumber.stringValue
//        print(primaryPhoneNumberStr)
    }
    func contactPickerDidCancel(_ picker: CNContactPickerViewController) {
    }
    func chooseContact() {
        let contactPicker = CNContactPickerViewController()
        contactPicker.delegate = self
        contactPicker.displayedPropertyKeys =
            [CNContactGivenNameKey
                , CNContactPhoneNumbersKey]
        self.present(contactPicker, animated: true, completion: nil)
    }
Info.plist
<key>NSContactsUsageDescription</key>
<string>This app requires contacts access to function properly.</string>
             
        If embedded in Navigation Controller:
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
if let rootViewController = window?.rootViewController as? UINavigationController {
    if let viewController = rootViewController.viewControllers.first as? ViewController {
        let url = alert["imgurl"] as? NSString
        viewController.loadImage(url as String)
    }
}
}
If not embedded in Navigation Controller:
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
    if let rootViewController = window?.rootViewController as? ViewController {
        rootViewController.loadImage()
    }
}
             
        let alert = UIAlertController(title: "Title", message: nil, preferredStyle: .alert)
alert.addTextField { (textField) in
        textField.placeholder = "Name"
    }
let action = UIAlertAction(title: "Save", style: .default) { (_) in 
}
let cancel = UIAlertAction(title: "Cancel", style: .cancel) { (action: UIAlertAction) in
    }
alert.addAction(action)
    alert.addAction(cancel)
present(alert, animated: true, completion: nil)