Входящий вызов не вызывает OnNavigateAway?

У меня есть игра WP7 XNA, которая должна сохранять состояние всякий раз, когда пользователь уходит. Это происходит, когда пользователь нажимает кнопку «Пуск», кнопку «Назад» и т. д. Однако игра не останавливается и ничего не происходит, когда мне поступает входящий вызов (даже когда я принимаю вызов).

Прием вызова не вызывает OnNavigateAway? Это похоже на то, что вы не получаете классический переход назад-навигация, но это больше похоже на наложение.


person Radu Cojocaru    schedule 26.03.2012    source источник


Ответы (2)


Обработайте событие Obscured, чтобы приостановить игру. Это событие возникает, когда какой-либо элемент пользовательского интерфейса находится над экраном. Звонки, окно сообщений и т. д. Это учебники должны вам помочь.

person Ku6opr    schedule 26.03.2012

Я думаю, вы ищете обработчик событий Deactivated. Используйте что-то вроде следующего кода, где «GameDeactived» — ваш метод действий, когда пользователь нажимает кнопку «Домой», принимает вызов и т. д.

PhoneApplicationService.Current.Deactivated +=
                  new EventHandler<Microsoft.Phone.Shell.DeactivatedEventArgs>(GameDeactivated);

Надеюсь, это поможет.

person Darren Reid    schedule 26.03.2012