2017-04-26 8 views
0

通知をタップすると、特定のView Controllerにプッシュ通知を表示し、通知からView Controllerにデータを送信したい。私は開発のために迅速に使用していますremotepush通知が迅速にクリックされたときに特定のView Controllerを呼び出す

+0

これまでにチェックしたことがあります: http:// stackov erflow.com/questions/34856605/open-specific-viewcontroller-when-opening-app-from-push-notification –

答えて

0

@luzoが指摘しているように、通知は、イベントが発生したことをコントローラを表示するために通信するために送信する方法です。通知には、通知と共にView Controllerに送信したいデータの辞書を受け入れるuserinfoパラメータもあります。スイフト3において

、タップボタンにこれを追加する:

let center = NotificationCenter.default 
center.post(name: Notification.Name(rawValue: "nameOfNotification"), 
        object: nil, 
        userInfo:["id":"data"]) 

とのViewControllerに、通知のIDを登録し、機能の参照を追加します。

let center = NotificationCenter.default 
    center.addObserver(forName:NSNotification.Name(rawValue: "nameOfNotification"), object:nil, queue:nil, using:notifDidConnect) 

と追加関数の実装:

func notifDidConnect(notification:Notification) -> Void { 
     guard let userInfo = notification.userInfo, 
      let id = userInfo["id"] as? String else { 
       print("error occured") 
       return 
      } 
     print("notification received") 
    } 
0

あなたはビューのコントローラを実装する必要があります。これはアプリケーションデリゲートからの通知を聞いて、彼は何をすべきかを決定します。これが私のやり方であり、もっと良い解決策かもしれません。

関連する問題