【问题标题】:How can i go to delegate class from UIViewController class in ios我如何从 ios 中的 UIViewController 类中去委托类
【发布时间】:2014-07-08 05:34:50
【问题描述】:

我创建了一个私有委托类。我想在我的UIViewController 类中单击按钮时调用这个委托类。一旦请给我解决方案。我在这里写代码请注意。

-(IBAction)gotoDailPad:(id)sender{
    FirstViewApplication *appDelegate = (FirstViewApplication *)[[UIApplication sharedApplication] delegate];
}

【问题讨论】:

  • 你没有。几乎没有理由这样做。,

标签: objective-c ios7 uiviewcontroller appdelegate


【解决方案1】:

要访问应用代理,您可以:[[UIApplication sharedApplication] delegate]

现在要访问委托的方法或成员,确保它在标头 (.h) 文件中公开。例如,如果您想调用在实现 (.m) 文件中实现的方法,请在 .h 文件中声明它:

AppDelegate.h

-(int) getCurrentAppID;

AppDelegate.m

-(int) getCurrentAppID { return 0; }

这就是它的全部内容......从这个意义上说,应用程序委托并没有什么“特别”的地方。

【讨论】:

    【解决方案2】:

    如果你按照常见的标准在你的委托中导入 viewController 会更好

    #import "viewControler.h"
    

    在委托类中

    • Delegate 类是应用程序的启动,因此建议不要从根目录返回

    【讨论】:

      【解决方案3】:

      试试这个

      #import "AppDelegate.h"
      
      AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
      [appDelegate.firstViewController someMethod]
      

      【讨论】:

        猜你喜欢
        • 2020-07-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多