Сообщение об ошибке при попытке вставить метод в touchesBegan - PullRequest
0 голосов
/ 28 апреля 2010

Я пытаюсь создать новый метод в моем файле TapDetectingImageView, и он предупреждает меня, что он не может найти метод, даже если я объявил его в файле .h.

Все три конкретных предупреждения указывают на строку @end в файле .m, когда я ее создаю, и они говорят: «Неполная реализация класса« TapDetectingImageView »;« Определение метода »-functionA:« not found »; «Определение метода для -functionB:« not found »

Чего мне не хватает? Мне не разрешено делать это в файле протокола, таком как TapDetectingImageView?

В моем .h файле есть:

@interface TapDetectingImageView : UIImageView <AVAudioPlayerDelegate> {

id <TapDetectingImageViewDelegate> delegate;

}

@property (nonatomic, assign) id <TapDetectingImageViewDelegate> delegate;

-(void) functionA:(NSString*)aVariable;
-(void) functionB:(NSString*)aVariable;

@end

В моем .m файле:

-(void)functionA:(NSString*)aVariable {

// do stuff in this function with aVariable

}

-(void)functionB:(NSString*)aVariable {

// do stuff in this function with aVariable

}

1 Ответ

0 голосов
/ 30 апреля 2010

Я понял это ... Я должен был объявить их как закрытые методы в файле .m, чтобы они работали, а затем вызывать их как [self methodName:variableIn] ... по любой причине, если они не будут работать объявил их в файле .h.

Я объявил их так в файле .m сразу после файлов импорта и до implementation:

@interface TapDetectingImageView()
// Private Methods
-(void)functionA:(NSString *)aVariable;
-(void)functionB:(NSString *)aVariable;
@end
...