我正在尝试从另一个类中的一个类调用方法。
@interface example : NSObject
-(void)displayString:(NSString*)str;
@end
@implementation example
-(void)displayString:(NSString*)str
{
NSLog(@"The string:%@",str);
}
@end
// callExample.h
@interface callExample:UIViewController
@property (nonatomic, strong) example *ex;
@end
//按下此按钮调用函数displayString。
// callExample.m
@implementation callExample
- (IBAction)btnPressed:(id)btn
{
[self.ex displayString:@"sampleTEXT"];
}
@end
所以当我调试[self.ex displayString:@"sampleTEXT"];
时,这行代码不会调用示例类中的函数。我想我正在做的一切正确。我错过了什么。我哪里错了?
任何帮助都将受到高度赞赏。
感谢
答案 0 :(得分:0)
首先,displayString
不是类方法,它是一个实例方法。其次,相关的是,你没有创建example
类的实例来调用方法。
现在让我们将它放在viewDidLoad
类的callExample
方法中(你不说实例是否已存在)。类似的东西:
self.ex = [[example alloc] init];
另外,请检查命名约定:here。