从视图中调用函数

时间:2015-03-25 17:31:10

标签: ios objective-c

我试图创建一个可以从不同的viewControllers调用的方法。

我有一个名为Info.h / Info.m的类,我有一个方法: -

-(void) testFunc {
 ... Do something here
}

然后我想在我的ViewController中调用这个函数。我尝试了以下但我无法运行testFunc。

#import "ViewController.h"
#import "Info.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];

    Info *targetsInstance = [[Info alloc] init];
    [targetInstance testFunc];

}

@end

当我输入[targetInstance testFunc]时,我得到错误"没有可见的@interface用于'信息'声明选择器' testFunc'"

2 个答案:

答案 0 :(得分:3)

Info.h文件中,您必须在-(void) testFunc部分中声明@interface作为方法

@interface Info: UIViewController {
}

-(void) testFunc;

@end

答案 1 :(得分:1)

假设您声明info类(我建议使用大写字母表示名称),请正确替换:

[info testFunc];

使用:

[targetsInstance testFunc];

由于该方法是一种实例方法(由于' - '字符),您需要一个实例来调用它。