【问题标题】:No visible @interface for 'Appdelegate' declares the selector 'setupTabBarController''Appdelegate' 没有可见的@interface 声明选择器'setupTabBarController'
【发布时间】:2013-02-28 06:38:34
【问题描述】:

我在Appdelegate.m中创建了一个方法

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

现在在ABC.m 我想访问setupTabBarController

我已包含应用委托:

#import "AppDelegate.h"

然后:

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

但它显示错误,

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

我哪里错了?

【问题讨论】:

    标签: iphone ios objective-c cocoa-touch appdelegate


    【解决方案1】:

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

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

    在 AppDelegate.h 中:

    @interface AppDelegate : UIResponder <UIApplicationDelegate>
    
    - (void)setupTabBarController;
    
    @end
    

    【讨论】:

    • 再次检查。我确定你没有在AppDelegate.h 类中声明。
    • @Shyantanu,很高兴知道这一点。 :)
    【解决方案2】:

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

    -(void)setupTabBarController;
    

    【讨论】:

      【解决方案3】:

      使用:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-07-27
        相关资源
        最近更新 更多