objective-c-Protokoll die Delegierten

Bin ich zu verstehen, wie die Delegierten die Arbeit gegangen Mulde einige Beispiele, aber jetzt mit Basis-app für die Prüfung, es scheint, dass ich noch nicht hab,

hier mein code:

Klasse definiert Protokoll - > *.h

#import <Foundation/Foundation.h>
@protocol protoPerra <NSObject>

-(void) dimeTuNombre:(NSString *) s;
@end

@interface MyClassic : NSObject {
id<protoPerra> _delegate;  
}
@property (assign) id<protoPerra> delegate;
@end

Klasse die Protokoll - > *.m

#import "MyClassic.h"

@implementation MyClassic
@synthesize delegate = _delegate;
- (id)init
{
self = [super init];
if (self) {
    //Initialization code here.
    [[self delegate] dimeTuNombre:@"pinguete"];
 }

return self;
}
-(void) dealloc {
[_delegate release];
_delegate = nil;
[super dealloc];
}
@end

Klasse Verabschiedung Protokoll:

#import "MyClassic.h"
@interface MainViewController : UIViewController (protoPerra)

.m

#import "MainViewController.h"
  @implementation MainViewController
  -(void) dimeTuNombre {
   NSLog(@"ss9!! tkt");
   }
   - (void)viewDidLoad {
[super viewDidLoad];

UILabel *lava = [[[UILabel alloc] initWithFrame:CGRectMake(30, 100, 100, 20)] autorelease];
lava.text = @"lava ss9";
[self.view addSubview:lava];

MyClassic *pirr = [[[MyClassic alloc] init ] autorelease];
[pirr setDelegate:self];
 }
 -(void) dimeTuNombre:(NSString *)s {
   NSLog(@"%@",s);
  }
  @end

so, was fehlt in diesem einfachen Beispiel, damit es funktioniert mit meinem delegieren?

vielen Dank!

Bitte beachten Sie, das ich verwendet habe () anstelle der <> [im .h von der Annahme class] als wenn ich den Sparren, der code verschwindet

Schreibe einen Kommentar