このコードを使用していますが、「動作する」ことはありません。
DetailViewController.h
[#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
@protocol ProtocolNameDelegate
-(void)DoSomething;
@end
@interface DetailViewController : UIViewController {
id<ProtocolNameDelegate> _delegate;
}
@property (strong, nonatomic) id<ProtocolNameDelegate> _delegate;
DetailViewController.m
@synthesize _delegate;
- (void)viewDidLoad
{
[super viewDidLoad];
[_delegate DoSomething];
}
MasterViewController.h
@interface MasterViewController : UITableViewController <ProtocolNameDelegate>
MasterViewController.m
-(void)DoSomething
{
NSLog(@"It works");
}
次のようなものを追加する必要があると思います:
MasterViewController* mvc = [[MasterViewController alloc] init];
mvc._delegate = self;
しかし、それはエラーを出します。ちなみに、MasterViewController の別のインスタンスを作成しますか?