UILocalNotification最小动作 - 一个蓝色,一个清除?

时间:2015-11-22 20:42:58

标签: ios push-notification uilocalnotification

我正在调整UILocalNotification和通知操作 - 所有这些工作正如我所期望的那样,只有当我在我的类别中提供两个Minimal操作时,通过滑动显示操作时在通知中心,最右边的操作始终是蓝色。

由于我的应用程序中的操作是相同的,我宁愿它们都是清晰的灰色,而不是一个蓝色,一个清晰。我知道我可以用destructive将它们变成红色,但这也是错误的,如果我明确地将destructive设置为false,我仍然会得到一个蓝色,一个清楚。

这是一张显示我正在谈论的内容的图片:

enter image description here

以下是我用来制作它的代码:

let note = UILocalNotification()

note.fireDate = NSDate(timeIntervalSinceNow: 5)
note.timeZone = NSTimeZone.defaultTimeZone()

note.alertBody = "Actions: A and B"
note.alertTitle = "Notification!"

let action1 = UIMutableUserNotificationAction()
action1.identifier = “ACTION_A"
action1.title = "A"
action1.activationMode = .Background

let action2 = UIMutableUserNotificationAction()
action2.identifier = “ACTION_B"
action2.title = "B"
action2.activationMode = .Background

let category = UIMutableUserNotificationCategory()
category.identifier = "ANSWERS_CATEGORY"
category.setActions([action1, action2], forContext: .Default)

note.category = “ACTIONS_CATEGORY"

let categories = Set(arrayLiteral: category)
let settingsRequest = UIUserNotificationSettings(forTypes: [.Alert, .Sound, .Badge], categories: categories)
UIApplication.sharedApplication().registerUserNotificationSettings(settingsRequest)

UIApplication.sharedApplication().scheduleLocalNotification(note)

1 个答案:

答案 0 :(得分:3)

HiGnotification programming guide都不建议可以设置按钮的背景颜色。我发现的最具体的参考是后者,即:

  

如果破坏性属性为NO,则操作按钮显示为蓝色;如果是,则按钮为红色。

这显然不准确,因为两个非破坏性动作都不是蓝色,但暗示暗示每个颜色的颜色由iOS自动设置