1
いくつかの助けがありがたいです。単純なデリゲートメソッドが機能しません
私はテスト目的のために、この単純なプロジェクトがあります。
http://dl.dropbox.com/u/10101053/testDelegate.zip
私は、デリゲートメソッドでNSStringのを渡したいと思いますが、このコードでは動作しませんが。
testDelegateViewController.h
@protocol testDelegateViewControllerDelegate;
@interface testDelegateViewController : UIViewController {
id<testDelegateViewControllerDelegate> delegate;
IBOutlet UIButton *button;
}
@property (nonatomic, assign) id<testDelegateViewControllerDelegate> delegate;
@property (nonatomic, retain) IBOutlet UIButton *button;
- (void)pass;
@end
@protocol testDelegateViewControllerDelegate
- (void)passSomeToDelegate:(NSString *)some;
@end
testDelegateVewController.m
#import "testDelegateViewController.h"
@implementation testDelegateViewController
@synthesize delegate, button;
- (void)pass
{
NSLog(@"Button Pressed");
[self.delegate passSomeToDelegate:@"some"];
}
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad
{
[super viewDidLoad];
[button addTarget:self action:@selector(pass) forControlEvents:UIControlEventTouchUpInside];
}
//rest of code
AppDelegate.h
#import "testDelegateViewController.h"
@interface AppDelegate : NSObject <UIApplicationDelegate, testDelegateViewControllerDelegate> {
}
AppDelegate.m
#import "AppDelegate.h"
@implementation AppDelegate
@synthesize window=_window;
@synthesize viewController=_viewController;
#pragma mark Delegate Method
- (void)passSomeToDelegate:(NSString *)some
{
NSLog(@"%@", some);
}
//rest of code
しかし、私のコンソールでは、ボタンをタップすると何も表示されません。
ありがとうございました
ありがとうございました。 – lostinbcn
これは私のような初心者に役立ちます。 – beginners