Swift 2'de, genellikle bunu yapacağınız birçok tür OptionSetType protokolüne uyacak şekilde güncelleştirilmiştir. Bu, kullanım için sözdizimi gibi bir diziye izin verir ve Durumunuzda aşağıdakileri kullanabilirsiniz.
let settings = UIUserNotificationSettings(forTypes: [.Alert, .Badge], categories: nil)
UIApplication.sharedApplication().registerUserNotificationSettings(settings)
İlgili bir notta, bir seçenek kümesinin belirli bir seçenek içerip içermediğini kontrol etmek istiyorsanız, artık bitsel AND ve sıfır kontrolü kullanmanıza gerek yoktur. Seçenek kümesine, bir dizinin değer içerip içermediğini kontrol ettiğiniz şekilde belirli bir değer içerip içermediğini sorabilirsiniz.
let settings = UIUserNotificationSettings(forTypes: [.Alert, .Badge], categories: nil)
if settings.types.contains(.Alert) {
// stuff
}
In Swift 3 aşağıdaki gibi, numuneler yazılmalıdır:
let settings = UIUserNotificationSettings(types: [.alert, .badge], categories: nil)
UIApplication.shared.registerUserNotificationSettings(settings)
ve
let settings = UIUserNotificationSettings(types: [.alert, .badge], categories: nil)
if settings.types.contains(.alert) {
// stuff
}