要解决本地通知中的iOS操作按钮消失的问题,可以通过设置通知的category和按钮的identifier来实现。通过为每个通知设置不同的category,并为每个按钮设置不同的identifier,就可以确保每个通知的操作按钮都会出现。
以下是一个包含代码示例的解决方法:
func setupNotificationCategory() {
// 定义操作按钮
let action1 = UNNotificationAction(identifier: "action1", title: "按钮1", options: [])
let action2 = UNNotificationAction(identifier: "action2", title: "按钮2", options: [])
let action3 = UNNotificationAction(identifier: "action3", title: "按钮3", options: [])
// 定义category
let category = UNNotificationCategory(identifier: "myCategory", actions: [action1, action2, action3], intentIdentifiers: [], options: [])
// 注册category
UNUserNotificationCenter.current().setNotificationCategories([category])
}
// 在发送本地通知之前设置category标识符
let content = UNMutableNotificationContent()
content.title = "本地通知标题"
content.body = "本地通知正文"
content.categoryIdentifier = "myCategory" // 设置category标识符
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
// 设置通知的category和操作按钮
setupNotificationCategory()
return true
}
这样,每个发送的本地通知都会包含操作按钮,并且只有最后一个收到的通知会显示这些操作按钮。其他通知将不会显示操作按钮。
上一篇:本地通知在随机时间触发。