为啥无法初始化应用委托类?
Posted
技术标签:
【中文标题】为啥无法初始化应用委托类?【英文标题】:Why app delegate class cannot be initialized?为什么无法初始化应用委托类? 【发布时间】:2014-06-22 01:18:23 【问题描述】:为什么我们不像初始化所有其他视图控制器类那样分配和初始化 appdelegate 类? 我是ios编程的初学者。请帮助
【问题讨论】:
【参考方案1】:我们不分配应用委托,因为系统会为我们分配。请查看您的 Xcode 项目中的 main.m
类:
//
// main.m
//
#import <UIKit/UIKit.h>
#import "AppDelegate.h"
int main(int argc, char * argv[])
@autoreleasepool
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
【讨论】:
【参考方案2】:如果你分配和初始化任何委托类,变量将为空,你不能使用方法。如果您想使用委托类中的任何变量或方法,请尝试这样的操作
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
NSString * deviceToken=appDelegate.deviceToken;
我希望你得到你的答案。
【讨论】:
但是为什么变量会是 null ?这是我的问题。以上是关于为啥无法初始化应用委托类?的主要内容,如果未能解决你的问题,请参考以下文章
为啥 Visual Basic 2010 应用程序在运行 2 年后无法初始化就好了
无法构造“DepartmentDataDelegate”,因为它没有可访问的初始值设定项