如何调用从
问题描述:
其他类
我有一些麻烦搞清楚至调用方法,我在其他类如何调用从
#import "myNewClass.h"
#import "MainViewController.h"
@implementation MainViewController
@synthesize txtUsername;
@synthesize txtPassword;
@synthesize lblUserMessage;
- (IBAction)calculateSecret {
NSString *usec = [self calculateSecretForUser:txtUsername.text
withPassword:txtPassword.text];
[lblUserMessage setText:usec];
[usec release];
}
...
myNewClass.h
#import <Foundation/Foundation.h>
@interface myNewClass : NSObject {
}
- (NSString*)CalculateSecretForUser:(NSString *)user withPassword:(NSString *)pwd;
@end
的方法myNewClass.m
#import "myNewClass.h"
@implementation myNewClass
- (NSString*)CalculateSecretForUser:(NSString *)user withPassword:(NSString *)pwd
{
NSString *a = [[NSString alloc] initWithFormat:@"%@ -> %@", user, pwd];
return a;
}
@end
的方法CalculateSecretForUser总是说
'MainViewController' 可不回应 '-calculateSecretForUser:withPassword:'
我究竟做错了什么?
答
关键字“自我”是指您当前班级的实例。因此,您正在将消息calculateSecretForUser:withPassword
发送到MainViewController
,该消息没有实现它。你应该实例化myNewClass
并将其称为:
- (IBAction)calculateSecret {
myNewClass *calculator = [[myNewClass alloc] init];
NSString *usec = [calculator calculateSecretForUser:txtUsername.text
withPassword:txtPassword.text];
[lblUserMessage setText:usec];
[usec release];
[calculator release];
}
非常感谢你:) – balexandre 2010-04-05 08:01:38