![](/img/trans.png)
[英]IOS Swift how reload viewcontroller when app come from background?
[英]iOS swift 3 reload tableview when open app from background
我在我的應用程序中實現了推送通知。 只要有新消息,用戶就會從服務器獲得推送通知。
當用戶單擊推送通知時,它將打開應用程序。 我希望我的應用在發生這種情況時重新加載表格視圖,向用戶顯示最近的新聞提要。
Swift 3有可能嗎?
據我了解,如果您的應用在最近的新聞訂閱源ViewController上打開,然后又被用戶關閉,那么您會很感興趣。 稍后,在接收推送時,用戶單擊它並打開相同的新聞提要控制器。
您必須在UIViewController
訂閱UIApplicationWillEnterForeground
通知,例如
NotificationCenter.default.addObserver(self, selector: #selector(yourMethod), name: NSNotification.Name.UIApplicationWillEnterForeground, object: nil)
並像這樣實現yourMethod
func yourMethod() {
// send request to update newsfeed
// then update tableView
// tableView.reloadData()
}
別忘了退訂
deinit {
NotificationCenter.default.removeObserver(self)
}
這是最簡單的解決方案,我描述了最簡單的情況。 例如,有些更復雜的情況我沒有描述
該應用程序已關閉,您必須根據willFinishLaunchingWithOptions
收到的推送進行分層。
該應用程序將在另一頁上打開,在這種情況下,您必須重新配置viewControllers層次結構以顯示所需的ViewController。 在這種情況下,您必須將某些數據從按下的“推送通知”傳遞到所需的ViewController。
希望能幫助到你!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.