내 애플리케이션을 닫은 후 앱을 반환하면 applicationDidBecomeActive(application: UIApplication)
이 자동으로 AppDelegate.swift에서 실행됩니다. 이 응용 프로그램의 일시 정지 상태를 처리하는 방법 화재 : GameViewController().pause(true)
앱이 활성화 된 후에도 SpriteKit 장면 일시 중지
방법은 다음과 같습니다
func pause(paused: Bool) {
if paused == true {
scene?.paused = true
print("paused")
} else if paused == false {
scene?.paused = false
print("unparsed")
}
}
먼저 게임이 자동으로 수행해야하는지 정확히 어떤 일시 정지 된 응용 프로그램을 실행. 응용 프로그램으로 돌아갈 때 그것은 일시 중지됩니다. 그래도 콘솔은 "일시 중지됨"을 인쇄합니다.
scene?.paused
대신 scene?.view?.paused
을 사용해 보았습니다. 이것은 효과가 있지만 장면에서 실행되는 애니메이션에서는 지연이 발생합니다.
어떤 도움은 매우 내가 update(currentTime: NSTimeInterval)
함수의 pause()
메소드를 호출하여 문제를 해결하기 위해 관리
편집을 감상 할 수 있지만,이 방법은 의미로 나는이 솔루션을 좋아하지 않는다 프레임마다 한 번 호출됩니다. 다른 솔루션은 매우 당신 GameViewController의 새로운 인스턴스를 생성하기보다는 현재에 액세스하기 때문에이 코드는 아무 의미
GameViewController().pause(true)
하지 않습니다
이 질문은 여러 번 대답 했으므로 검색 기능을 사용하십시오. – Knight0fDragon
아무 것도 발견하지 못했을 때 물어 보지 않았을 것입니다. 질문 할 때마다 또 다른 해결책이 있으며 그들 중 누구도 나를 위해 일하지 않았습니다. – Gary
장면이 일시 중지되거나 일시 중지되지 않으면 모든 자식의 상태가 전환되므로 장면의 일시 중지를 재정의해야합니다. 일시 중지를 재정의하고 모든 일시 중지를 임시 배열에 배치하고 일시 중지 값을 할당 한 다음 하위 일시 중지 상태를 복원합니다. 당신은 내 대답을 봐야 할 수도 있습니다 http://stackoverflow.com/questions/25351709/how-to-keep-spritekit-scene-paused-when-app-becomes-active면 당신이 8을하고있다 – Knight0fDragon