Я хочу, чтобы мой метод паузы вызывался, когда появляется push-уведомление (push, sms).
Прежде всего, концепция игры: при запуске приложения отображается главный вид, гдеВы можете выбрать один из трех разных режимов игры.Таким образом, если пользователь играет в одном игровом режиме и получает смс, игра должна остановиться, и если он отменит уведомление, игра должна продолжиться.
имена контроллеров представления трех различных режимов - PlayViewController, PlayTwoViewController и TimePlayViewController.
Итак, вот мое приложение Delegate:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
// Add the view controller's view to the window and display.
[self.window addSubview:viewController.view];
[self.window makeKeyAndVisible];
return YES;
}
- (void)applicationWillResignActive:(UIApplication *)application { [PlayViewController pauseGame]; [PlayTwoViewController pauseGame];[TimePlayViewController pauseGame]; }
- (void)applicationDidEnterBackground:(UIApplication *)application {
}
- (void)applicationWillEnterForeground:(UIApplication *)application {
}
-(void)applicationDidBecomeActive:(UIApplication *)application { [PlayViewController pauseGame]; [PlayTwoViewController pauseGame];[TimePlayViewController pauseGame]; }
- (void)applicationWillTerminate:(UIApplication *)application {
}
метод pauseGame всегда один и тот же.Код:
-(IBAction)pauseGame {
[myTimer invalidate];
PauseViewController *screen = [[PauseViewController alloc] initWithNibName:nil bundle:nil];
screen.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:screen animated:YES];
[screen release]; }
myTimer - это просто NSTimer.
Приложение вылетает, когда я собираю его с помощью приведенного выше кода. Консоль говорит:
2011-04-03 11: 22: 10.091 appName [458: 207] + [PlayViewController pauseGame]: нераспознанный селектор отправлен в класс 0x1d39c 2011-04-03 11: 22: 10.093 appName [458: 207] * Завершение работы приложенияк необработанному исключению 'NSInvalidArgumentException', причина: '+ [PlayViewController pauseGame]: нераспознанный селектор, отправленный в класс 0x1d39c', завершает работу после вызова экземпляра 'NSException'