当用户单击主页按钮时暂停 iOS 应用游戏

Pausing iOS app game when User clicks Home Button

当用户在玩游戏时,如果他们点击 iPhone/iPad 上的主页按钮,游戏会自行暂停,但如果用户再次点击应用程序打开它,游戏不会保持暂停状态,而是游戏会引导他们游戏结束屏幕。我如何编写代码,一旦用户单击“主页”按钮,游戏就会暂停,如果他们再次单击应用程序,游戏会在 2 秒内取消暂停,然后你继续。以下方法中是否有特定代码暂停整个游戏,然后在有人点击它并过几秒钟后取消暂停?

  UIApplicationDelegatedelegate 
  -(void)applicationWillResignActive:(UIApplication *)application{}
  -(void)applicationWillEnterForeground:(UIApplication *)application{}

我让应用程序在后台暂停并保持暂停状态,但是我如何做到当用户再次进入前景时,在游戏取消暂停之前有大约 2 秒的延迟?

iOS 无法神奇地为您暂停或取消暂停您的游戏 - 这是您必须在代码中自行处理的事情。

一旦你有了取消暂停游戏的逻辑,你就可以通过调用 performSelector:withObject:afterDelay: 获得你在问题中提到的 2 秒延迟(参见 docs)。例如:

[self performSelector:@selector(continueGame) withObject:nil afterDelay:2.0]

其中 self 有一个名为 continueGame 的方法来 .. 继续游戏。 :)