在目标c中按下按钮调用全局函数

时间:2014-01-14 20:04:51

标签: ios objective-c

我有一个使用以下链接作为指南的函数的公共文件。唯一的区别是不是在我希望使用它的每个文件中导入公共文件,而是在%ProjectName%-Prefix.pch文件中全局导入它。

How to create global functions in Objective-C

在我想要使用该功能的文件中我所拥有的是以下内容并且它有效。它调用测试功能,它只是将测试打印到控制台。

[Common test];

现在我想将该功能添加到具有以下内容的按钮中:

UIBarButtonItem *btnBack= [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"Arrows-Back.png"]
                                                           style:UIBarButtonItemStylePlain
                                                          target:self
                                                          action:@selector([Common test])];

它说“预期的标识符”,并且没有编译。

我尝试了几种变体,比如

  • 将目标设置为“Common”(我的界面名称)
  • 从操作中删除“@selector”
  • 创建公共前Common c = [[Common alloc] init]的实例,然后使用[c test]

似乎无法弄清楚如何通过按钮操作调用此全局函数。

谢谢,

2 个答案:

答案 0 :(得分:2)

将目标设置为[Common class],将操作设置为@selector(test)

答案 1 :(得分:1)

您可以在当前班级中编写一个方法:

-(void) test {
    [Common test];
}

然后将目标设置为self,将操作设置为@selector(test)