JustinWong

做纯粹的快乐的游戏

导航

管理CCLayer们的Touch

Posted on 2011-07-19 10:15  JustinWong  阅读(347)  评论(2)    收藏  举报

当CCLayer中含有CCMenu时, 仅仅设置self.isTouchEnable是不够的,这时通常需要这样开关CCLayer的触控

- (void)openTouch {
for (id child in [self children]) {
if ([child isKindOfClass:[CCMenu class]]) {
for (CCMenuItem *item in [child children]) {
[item setIsEnabled:YES];
}
}
}
self.isTouchEnabled
= YES;
}

- (void)closeTouch {
for (id child in [self children]) {
if ([child isKindOfClass:[CCMenu class]]) {
for (CCMenuItem *item in [child children]) {
[item setIsEnabled:NO];
}
}
}
self.isTouchEnabled
= NO;
}