2

我已经创建了一个方法Appdelegate.m

-(void)setupTabBarController {
         // details goes here
}

现在ABC.m我想访问setupTabBarController

我已经包括了应用程序委托:

#import "AppDelegate.h"

接着:

AppDelegate *maindelegate = [[AppDelegate alloc] init];
[maindelegate setupTabBarController];

但它显示错误,

'Appdelegate' 没有可见的@interface 声明选择器'setupTabBarController'

我哪里错了?

4

3 回答 3

8

正如错误消息所述,您需要在其中声明它,AppDelegate.h然后您应该将其称为:

AppDelegate *maindelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[maindelegate setupTabBarController];

在 AppDelegate.h 中:

@interface AppDelegate : UIResponder <UIApplicationDelegate>

- (void)setupTabBarController;

@end
于 2013-02-28T06:41:34.807 回答
1

你必须在 Appdelegate.h 文件中声明这个方法才能在另一个视图控制器中使用它,像这样

-(void)setupTabBarController;
于 2013-02-28T06:41:59.200 回答
1

利用 :

AppDelegate *appDelegate =(AppDelegate *)[[UIApplication sharedApplication] delegate];
[appDelegate setupTabBarController];
于 2013-02-28T06:42:03.420 回答