當用戶進入後臺(雙擊主屏幕按鈕)或接收到電話時,遊戲將在後臺進行。因此,分數會隨着遊戲的進行而增加。當他們進入後臺或接聽電話時,我需要知道如何暫停或停止遊戲。我的應用程序在迅速3,Xcode 8。如何在用戶進入後臺或接聽電話時暫停或停止精靈套件遊戲
回答
在AppDelegate.swift中,Xcode默認使用一種名爲applicationWillResignActive
的方法。這是你應該看到的,除非你編輯或刪除方法:
func applicationWillResignActive(_ application: UIApplication) {
// ...
}
從Xcode的模板......
當應用程序即將從活動轉移到非活動狀態 發送。這可能會發生在某些類型的臨時中斷 (如傳入電話或SMS消息)或當用戶退出應用程序並開始過渡到後臺狀態。 使用此方法可暫停正在進行的任務,禁用定時器並使圖形渲染回調無效。遊戲應該使用這種方法來暫停 這個遊戲。
由於在遊戲變爲不活動狀態之前調用此方法,我的建議是使用此方法來識別您的遊戲已暫停。您可以在此方法中放置任何需要的代碼,以實際暫停遊戲的特定任務。
希望這會有所幫助!
就像約翰說的那樣,你需要暫停遊戲..但是要做到這一點,你需要一個對遊戲實例/對象的引用。這是一個靜態的參考,你可以在你的AppDelegate使用:
class GameScene: SKScene {
static var sharedInstance = GameScene()
override func didMove(to view: SKView) {
sharedInstance = self
}
}
然後,在AppDelegate的功能,你可以使用:
GameScene.sharedInstance.isPaused = true // or false
你應該暫停比賽中applicationWillResignActive:
您應該使用此方法暫停正在進行的任務,禁用定時器,並且降低OpenGL ES幀速率。遊戲應該使用這個方法來暫停遊戲 。處於非活動狀態的應用程序在等待轉換到活動狀態或背景狀態時應該執行最小程度的工作 。
在說話的瞬間(早期的教,這不是一個情況下),當你從後臺返回,例如。返回激活狀態,場景將自動解除。有時這是期望的行爲,有時不是。
例如,有時您希望您的遊戲在用戶從背景中返回時保持暫停狀態。在這種情況下,您將從適當的AppDelegate方法中觸發通知。然後你會在GameScene中捕捉到這個通知,並採取必要的行動(例如,再次暫停遊戲,或者暫停世界節點,並彈出它以讓用戶繼續他想要的時間...)
暫停自動太。當你轉到背景時,場景暫停。如果你只是想讓你的場景保持暫停,你並不需要做任何事情。
- 1. 在倒計時期間暫停,停止或延遲遊戲開始
- 2. 如何在電話接聽時暫停視頻播放?
- 3. 暫停事件偵聽器在後臺
- 4. 如何停止或暫停php執行?
- 5. 如何停止或暫停Pandora和Spotify
- 6. 在通話過程中暫停遊戲
- 7. 有人打電話/短信時暫停遊戲
- 8. 如何在cocos2d中暫停遊戲?
- 9. 遊戲計時器(開始,暫停,停止)
- 10. 如何防止切換選項卡時的HTML遊戲暫停
- 11. 將暫停插入電話://鏈接
- 12. scoreLabel.text使得遊戲暫停
- 13. clearInterval和暫停遊戲
- 14. Flash - 暫停遊戲ActionScript 3
- 15. 暫停遊戲循環?
- 16. 在pygame中暫停遊戲和用戶輸入
- 17. 暫停或停止所有bgworkers vb.net
- 18. SQL Profiler 2000不會暫停或停止
- 19. 播放和停止或暫停MP3
- 20. 如何在cocos2d中從後臺恢復遊戲後保持暫停狀態?
- 21. 如何在sprite套件中暫停遊戲時返回主場景
- 22. 安卓遊戲暫停屏幕,對話框或活動對話框?
- 23. Spritekit - 保持遊戲暫停時didBecomeActive
- 24. 如何中斷或停止後臺進程?
- 25. 線程[主](暫停(進入在遊戲方法主要))
- 26. JavaScript遊戲,精靈
- 27. 我將如何停止多個電子郵件或用戶名?
- 28. 計時器在停止或禁用後不會停止
- 29. 聲音造成遊戲滯後於迅捷精靈套件遊戲?
- 30. 如何在接到電話時暫停並播放音頻流