为“的appdelegate”不可见@interface声明选择“setupTabBarController”

问题描述:

我创建了一个方法Appdelegate.m为“的appdelegate”不可见@interface声明选择“setupTabBarController”

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

现在ABC.m我要访问的setupTabBarController

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

#import "AppDelegate.h" 

然后:

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

但它显示错误,

为 '的appdelegate' 不可见@interface声明选择 'setupTabBarController'

我哪里错了?

随着错误消息状态,你需要声明它AppDelegate.h,然后你应该称其为:

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

在AppDelegate.h:

@interface AppDelegate : UIResponder <UIApplicationDelegate> 

- (void)setupTabBarController; 

@end 
+0

给出同样的错误男人 – Shyantanu 2013-02-28 06:42:30

+0

再次检查。我相信你没有在'AppDelegate.h'类中声明。 – iDev 2013-02-28 06:42:54

+1

谢谢你,你很...很感谢。 – Shyantanu 2013-02-28 06:44:36

您必须声明此methosd在Appdelegate.h文件中使用它在另一个视图控制器中这样使用

-(void)setupTabBarController; 

使用:

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