別のファイル(myProtocol.h)でプロトコルを定義しました。そのためのコードは次のとおりです。
#import <Foundation/Foundation.h>
@protocol myProtocol <NSObject>
-(void) loadDataComplete;
@end
このメソッドを呼び出したいので、次のコードを実行しました。
firstViewController.h:
#import "myProtocol.h"
@interface firstViewController : UIViewController{
id <myProtocol> delegate;
}
@property (retain) id delegate;
-(void) mymethod;
firstViewController.m
@implementation firstViewController
@synthesize delegate;
- (void)viewDidLoad {
[self mymethod];
}
-(void) mymethod {
//some code here...
[delegate loadDataComplete];
}
プロトコルも利用されている別のファイルがあります。
secondViewController.h:
#import "myProtocol.h"
@interface secondViewController : UIViewController<myProtocol>{
}
secondViewController.m:
-(void) loadDataComplete{
NSLog(@"loadDataComplete called");
}
しかし、私のsecondViewControllerはプロトコルメタドを呼び出していません。なんでそうなの?任意の提案をいただければ幸いです。