2015-05-27 6 views
-1

Пока пользователь играет в игру, если они нажимают кнопку «Главная» на iPhone/iPad, игра приостанавливается, но не останавливается, если пользователь нажимает на приложение, чтобы открыть его , вместо этого игра приводит их к игре через экран. Как это сделать, когда пользователь нажимает кнопку «Главная», игра приостанавливается, и если они нажимают на приложение, в течение 2 секунд игра перестает действовать, и вы продолжаете. Есть ли какой-то конкретный код, который входит в следующие методы, которые приостанавливают всю игру, а затем отменяет ее после того, как кто-то щелкнет по ней и через несколько секунд?Приостановка игры приложения для iOS, когда пользователь нажимает кнопку «Главная»

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

я получил приложение, чтобы сделать паузу в фоновом режиме и оставаться паузе, но как я могу сделать это, что, когда пользователь EnterForeground снова, есть около 2 второй задержки перед игрой Ун-паузах?

+0

Грубо говоря, ваш двигатель не знает, что он приостановлен, и думает, что время продолжается, когда он приостановлен. Это все равно. – Almo

+2

@Merc Не забудьте принять ответы на свои предыдущие вопросы перед публикацией больше. http://stackoverflow.com/help/someone-answers – rmaddy

+0

Если это то, что вы имели в виду под своим предыдущим вопросом http://stackoverflow.com/questions/30487732/stop-game-app-if-home-button-clicked- ios затем отредактируйте этот вопрос. Не оставляйте вопрос и спрашивайте другого, что почти то же самое. – matt

ответ

1

iOS не может волшебным образом приостановить или приостановить игру для вас - это то, что вам нужно обрабатывать самостоятельно в коде.

Как только у вас есть логика для отмены паузы в игре, вы можете получить задержку в 2 секунды, указанную в вашем вопросе, позвонив по номеру performSelector:withObject:afterDelay: (см. docs). Например:

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

где self имеет метод continueGame к .. продолжить игру. :)

+0

Я на самом деле в настоящее время использую приведенный выше код в качестве своего кода для того, чтобы произошла задержка до появления экрана GameOver, но я полностью забыл. Спасибо, что напомнили мне, и это работает. – Merc

Смежные вопросы