我有SKScene
,显示加入当前房间的玩家。如果这些玩家中的任何一个离开房间(通过点击“离开”按钮),他们的玩家列表将被更新。
但是如果我从其中一个玩家关闭应用程序,该特定玩家仍留在房间里。我想从leaveRoom
调用我的applicationWillTerminate
函数,这样所有数据都可以正常工作。可能吗?我该如何解决这个问题?
答案 0 :(得分:3)
你可以让观察者拦截它:
override func didMove(to view: SKView) {
NotificationCenter.default.addObserver(
self,
selector: #selector(GameScene.applicationWillTerminate(notification:)),
name: NSNotification.Name.UIApplicationWillTerminate,
object: nil)
}
func applicationWillTerminate(notification: NSNotification) {
// put your code here
}
您可以将观察者移除到:
override func willMove(from view: SKView) {
NotificationCenter.default.removeObserver(self)
}