Я реализую класс кнопки в cocos2d, и я хочу иметь возможность передавать селектор при создании кнопки. Вот Button.m:Objective-C: Передача селектора объекту
#import "CCButton.h"
@implementation CCButton
+(CCButton*) buttonFromImage:(NSString*)image selectedImage:(NSString*)selectedImage atPosition:(CGPoint)position selector:(SEL)selector_method
{
CCMenuItem *menuitem = [CCMenuItemImage itemFromNormalImage:image selectedImage:selectedImage target:self selector:selector_method];
menuitem.position = position;
CCButton *menu = [CCMenu menuWithItems:menuitem, nil];
menu.position = CGPointZero;
return menu;
}
@end
Он наследуется от CCMenu. То, что я хочу сделать, это определить метод выбора везде, где будет создана моя кнопка. Например, если у меня есть меню, я хочу селектор, чтобы быть в меню, и назначить селектор на кнопку (в menu.m):
backButton = [CCButton buttonFromImage:@"image1.png" selectedImage:@"image2.png" atPosition:ccp(120,70) selector:@selector(backTouched:)];
[self addChild:backButton z:1];
...
- (void)backTouched:(id)sender {
//do what i want the button to do here
}
Это происходит сбой, когда я прикасаюсь к кнопке. Как мне реализовать то, что я хочу?
Спасибо за помощь, Dave
Изменить: Я получаю ошибку плохой указатель, SIGABRT
что сказать, когда он падает? – cobbal
Я получаю плохой понтер: SIGABRT –