2016-05-20 8 views
0

アプリが開いているか、バックグラウンドになっているときに、appdelegateの通知を使用してメッセージボックステーブルを更新しています。アプリを開くときにテーブルビューが更新されない

didFinishLaunchingWithOptionsおよびdidReceiveRemoteNotification)Appdelegate:

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

MessageViewController

viewdidloadで:

NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector (MessagesViewController.reloadtable), name: "changeMessageBox", object: nil) 

func reloadtable() 
{ 
    clearArrays() 
    if (PFUser.currentUser()!["firebaseUID"] !== nil) 
    { 

     self.updateResultArray(PFUser.currentUser()!["firebaseUID"] as! String) 

     resultsTable.reloadData() 

    } 
} 

メッセージボックスにデータがリフレッシュされます。

アプリが閉じられてチャットを受信すると、メッセージボックス(個々のチャットではなくすべての人からのメッセージを含むウィンドウ)が更新されません。

私は、アプリケーションを開いて、メッセージボックスに移動し、メインページに戻ってから再びメッセージボックスに戻って、テーブルビューをリフレッシュしなければなりません。

あなたは何が欠けているのか知っていますか?

答えて

0

は、私は同じ問題を有し、かつ、このように解決した

dispatch_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), {() -> Void in 

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

}) 

、ポスト通知用のコードの下に試してみてください。これがあなたを助けることを願っています。閉じ中または一時停止状態でアプリが

application:handleActionWithIdentifier:forRemoteNotification:completionHandler: 

をトリガーする一方、通知を受け

+0

このdidntの仕事変化なし:(クエリを持っている場合

はさらに、この文書を参照してください。 – subodh1989

関連する問題