-2

我正在制作一个相当简单的 iPhone 应用程序。我需要做的就是将 bool "paused" 设置为 true 以暂停游戏。当按下主页按钮时,我怎样才能让我的应用程序做到这一点?

谢谢大家,这正是我想要的。但是,由于它位于 appDelegate 中,因此我无法访问布尔值“暂停”来更改它。我怎样才能使它成为全球性的,以便我可以从 appDelegate 访问它?

4

4 回答 4

7

您的应用程序的 Appdelegate.m 提供了可用于跟踪应用程序是否将进入后台的功能;

用户按下按钮;

- (void)applicationWillResignActive:(UIApplication *)application

应用程序在后台;

- (void)applicationDidEnterBackground:(UIApplication *)application

在这些函数中的任何一个中,您都可以将 BOOL 设置为 True/YES。-> 请参阅 Apple 在函数中提供的注释以了解其确切用法。

当应用程序再次激活时,appdelegate 将(再次)触发一个函数;

- (void)applicationDidBecomeActive:(UIApplication *)application
于 2012-08-30T14:22:09.600 回答
0

在您的 AppDelegate 中,有两种方法在调用按钮时调用

您可以在此处暂停游戏:

 - (void)applicationDidEnterBackground:(UIApplication *)application
    {
          //Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 
    }

或在这里:

    - (void)applicationWillResignActive:(UIApplication *)application{
       //Sent when the application is about to move from active to inactive state.
    }
于 2012-08-30T14:21:40.860 回答
0

在您的应用委托中,实现 applicationWillResignActive:。设置暂停 = YES; 那里。在 applicationDidBecomeActive: 中重置它。

于 2012-08-30T14:21:44.030 回答
0
- (void)applicationWillResignActive:(UIApplication *)application

实现您的 pause 方法,当您的应用程序将变为非活动状态时将调用它。

于 2012-08-30T14:21:48.510 回答