Cocos2d: как я могу получить элемент CCMenu для вызова селектора, если он не выбран?

Как я могу получить элемент CCMenu для вызова селектора, если он не выбран?

Это вообще возможно?

при добавлении CCMenuItem я могу указать в качестве селектора функцию, которая будет вызываться при активации кнопки. Я хотел бы иметь возможность вызывать функцию, когда кнопка больше не "выбрана" (я имею в виду, что она выбрана и не активирована).

Я думаю, что я должен переопределить некоторые методы, но не уверен, какой из них:).

Любое предложение?

2 ответа

Решение

Подкласс CCMenuItemWh независимо и переопределяет один метод (производный от CCMenuItem):

-(void) unselected{
    [super unselected];
    [self myUnselectedExtension];
}

-(void) myUnselectedExtension{
    // whatever is your need , do it here.
}

Это невозможно без изменения CCMenu.

Однако вы можете запустить запланированное обновление и проверить каждый selected свойство пунктов меню, а также наблюдать любые изменения по сравнению с предыдущим выбранным состоянием (например, сохраненным в ivar).

Другие вопросы по тегам