2015-05-10 2 views
15

Я перечисляю действия, направленные на мои локальные уведомления, но есть ли способ определить, когда пользователь отклоняет уведомление?Как прослушать уведомление об увольнении в iOS?

Вот как я слушаю мои действия в моем AppDelegate, но увольнять не срабатывает так:

func application(application: UIApplication, handleActionWithIdentifier identifier: String?, forLocalNotification notification: UILocalNotification, completionHandler:() -> Void) { 
     var actionName: String? = nil 

     if let identifier = identifier { 
      switch identifier { 
       case "snoozeAction": 
        actionName = "snoozeActionTapped" 
        break 
       default: break 
      } 

      if let name = actionName { 
       NSNotificationCenter.defaultCenter().postNotificationName(name, object: nil) 
      } 
     } 

     completionHandler() 
    } 
+0

вам удалось разобраться? У меня похожая проблема. –

+0

Нет, я не сделал этого, я сдался и работал вокруг него, взломав метод опроса. Я просто начал щедрость, чтобы оживить ее. – TruMan1

+3

Зачем вы хотите это сделать? Apple намеренно делает это трудно (невозможно?), Потому что пользователь явно указал, что они не хотят взаимодействовать с вашим уведомлением. –

ответ

8

Отвергая уведомление делает не разбудите ваше приложение, чтобы не было этого.

2

Вы должны попробовать это:

func application(application: UIApplication!, 
      handleActionWithIdentifier identifier:String!, 
      forLocalNotification notification:UILocalNotification!, 
      completionHandler: (() -> Void)!){ 

       if (identifier == "FIRST_ACTION"){ 

        NSNotificationCenter.defaultCenter().postNotificationName("actionOnePressed", object: nil) 

       }else if (identifier == "SECOND_ACTION"){ 
        NSNotificationCenter.defaultCenter().postNotificationName("actionTwoPressed", object: nil) 

       } 

       completionHandler() 

     } 
Смежные вопросы