Как я могу активировать CCMenuItem и переместить CCSprite одним касанием
Blockquote
у меня есть CCMenuItem
Кнопка, которую я хотел бы иметь возможность нажать вниз, тогда, пока она еще нажата, создаст новый CCSprite
это можно утащить, все еще используя ту же прессу. В основном вы нажимаете кнопку вниз и перетаскиваете новый спрайт, который вы можете перемещать по экрану.
Я уже подкласс CCMenuItemImage
создать новый спрайт при нажатии, но новый спрайт не обнаружит никакого прикосновения, не подняв и не начав новое прикосновение. Могу ли я получить этот спрайт, чтобы увидеть или использовать свое существующее прикосновение от нажатия кнопки, чтобы позволить мне утащить его, не поднимая палец?
Любые мысли будут с благодарностью.
Мой подкласс CCMenuItemImage
который работает нормально для справки:
@interface CCMenuItemImageAdvanced : CCMenuItemImage {
}
-(void) selected;
-(void) unselected;
@end
@implementation CCMenuItemImageAdvanced
-(void) selected {
[super selected];
// Method that creates the ccsprite
[_sharedGameHud createSprite:self];
}
-(void) unselected {
[super unselected];
}
@end
2 ответа
Смотреть в
[CCMenu ccTouchBegan:(UITouch *)touch withEvent:(UIEvent *)event]
Вы могли бы подкласс CCMenu и вместо вызова
[selectedItem_ selected];
в приведенном выше методе вы можете создать новый метод в CCMenuItemImageAdvanced
- (void)selectedWithTouch:(UITouch*)touch;
затем используйте это прикосновение, чтобы переместить спрайт.
Возможно, вы могли бы создать CCSprite, скрытый при загрузке и проверенный при перемещении, проверить, виден ли CCSprite и следит ли он за ним. CCButton просто нужно будет показать CCSprite, делая его доступным для перемещения.