Cocos2d предыдущие сцены [само расписание] не останавливается!как следует при замене другой сцены - PullRequest
0 голосов
/ 23 марта 2012

Я использую Chaos In Motion по адресу http://www.chaosinmotion.com/flowcover.html для создания приложения на основе coverflow в ios с использованием cocos2d, я перемещаю сцену, используя [[ccdirector sharedirector] pushscene: [myscene scene]];

он показывает конкретный элемент управления и в нем есть метод обновления, работающий с использованием [self schedule:], затем я выскакиваю сцену и возвращаюсь к экрану, который присутствовал ранее, но расписание предыдущих сцен все еще работает ия не могу нажимать какие-либо кнопки на текущем экране.Я застрял с ним.

Я использую [[CCDirector sharedDirector] pushScene: [CCTransitionFadeBL transitionWithDuration: 3 scene: [AvatarSelection scene]]];для нажатия сцены и в классе выбора аватара у меня есть метод с именем

** - (void) ShowCoverFlow {FlowCoverViewController * flowCover;flowCoverView = [[[UIView alloc] initWithFrame: [[UIScreen mainScreen] bounds]] autorelease];

//using a navigation controller to present FlowCover without it rotating to portrait
testViewController = [[UINavigationController alloc] init];

//The navigation controller will try to put a nav bar in the window, so we hide it
[testViewController setNavigationBarHidden:YES animated:NO];

[testViewController setView:flowCoverView];

NSArray *array = [[NSBundle mainBundle] loadNibNamed:@"TestFC" owner:self options:nil];
flowCover = [array objectAtIndex:0];
testViewController.delegate = self;
[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO];
[[[[CCDirector sharedDirector] openGLView] window]addSubview:flowCoverView];
//testViewController.view.backgroundColor = [UIColor redColor];

double delayInSeconds = 0.1;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
    [testViewController presentModalViewController:flowCover animated:YES];
});



[testViewController  setModalPresentationStyle:UIModalPresentationFullScreen];

} **

затем при выборе покрытия потока я удаляю оставшееся ** - (void) представление flowCover: (FlowCoverView *) didSelect: (int) image {

[flowCoverView removeFromSuperview];

    [testViewController dismissModalViewControllerAnimated:YES];
    [testViewController release];
    testViewController = nil;
  [[CCDirector sharedDirector] popScene];
[[NSNotificationCenter defaultCenter] postNotificationName:@"avatarchanged" object:self];

} **

и после нажатия ни на одну из кнопок на более раннем экране, который у меня есть, не получается нажать

...