ios – AppDelegate到UIViewController

ios – AppDelegate到UIViewController,第1张

概述我有一个带有标题和实现文件的示例代码以及两个appDelegate文件.我想将项目的功能添加到我的应用程序中.前两个文件是一个ViewController文件,所以我只需要将其拖入,但其他两个是AppDelegate,我显然不能有两个应用程序代理.但是在这个示例应用程序的情况下,app委托被用作正确的viewcontroller,因为在UIViewController文件的.m文件中,有以下代码: 我有一个带有标题和实现文件的示例代码以及两个appDelegate文件.我想将项目的功能添加到我的应用程序中.前两个文件是一个VIEwController文件,所以我只需要将其拖入,但其他两个是AppDelegate,我显然不能有两个应用程序代理.但是在这个示例应用程序的情况下,app委托被用作正确的vIEwcontroller,因为在UIVIEwController文件的.m文件中,有以下代码:

AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];

由于AppDelegate没有实现applicationWillBecomeActive:等方法,我如何将文件转换为UIVIEwController文件?我需要在上面的代码中更改以调用控制器而不是代理(我的AppDelegate将保持不变).

代码是GitHub

这就是我所做的(代码需要包含Facebook API).转到下载选项卡,下载Archive.zip和AppDelegate.zip:https://github.com/Alexmitico45/FacebookRequests/downloads

基本上,控制器ContactFBSVIEwController链接到故事板中的vIEwcontroller.

解决方法 如果我理解正确,您希望示例中AppDelegate的功能在您的应用程序中.但您不想更换应用程序现有的AppDelegate?

AppDelegate类与其他类没有任何不同.它与众不同之处在于它实现了UIApplicationDelegate,并在main.m中明确引用,作为应用程序的启动类.

如果你想将它转换成另一个类,我会:

>重命名类(.h,.m,接口和实现名称),然后将其放入项目中.
>在Newname.h中,删除顶部的UIApplicationDelegate实现.
>在Newname.m中,您希望查看UIApplication方法部分中的任何功能,因为该功能专门分配给AppDelegate类执行,并查看是否需要将其合并到现有的AppDelegate类中.然后从Newname.m中删除那些UIApplicationDelegate方法,因为它们只能在您实现UIApplicationDelegate时存在.

由于VIEwController利用了其预期的AppDelegate是UIApplication层次结构中的长期类的事实,因此您需要复制该行为.这可能是通过在VIEwController.h中创建一个引用Newname的新弱属性来实现的:

VIEwController.h

@class Newname;@property (nonatomic,weak) Newname *newnameDelegate;

VIEwController.m

#import "Newname.h"...@implementation VIEwController@synthesize newnameDelegate;...- (IBAction)sendRequestbuttonAction:(ID)sender {    if (FBSession.activeSession.isOpen) {        [newnameDelegate sendRequest];    }}

Newname.m

...self.vIEwController = [[VIEwController alloc] initWithNibname:@"VIEwController" bundle:nil];self.vIEwController.newnameDelegate = self;...

希望这能让您了解从哪里开始.

总结

以上是内存溢出为你收集整理的ios – AppDelegate到UIViewController全部内容,希望文章能够帮你解决ios – AppDelegate到UIViewController所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1011081.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-22
下一篇2022-05-22

发表评论

登录后才能评论

评论列表(0条)

    保存