#UIApplication,顾名思义,代表的是整个应用做的事,因此每个程序只能有一个,系统使用的是单例模式,就是上面的[UIApplication sharedApplication]来得到一个实例。这个单例实例是在系统启动时由main函数里面的UIApplicationMain方法生成,就是每个程序里都有的AppDelegate,它实现了UIApplicationDelegate的Protocol,也就是AppDelegate的一个实例。每次通过[UIApplication sharedApplication]调用的就是它。
----------------------------在AppDelegate.h 中定义全局变量------------------------
@interface AppDelegate : UIResponder <UIApplicationDelegate>{SinaWeibo * _sinaweibo;
}
@property (strong,nonatomic) SinaWeibo *sinaweibo;
@end
在AppDelegate.m 文件中
@implementation AppDelegate
//注意释放
- (void)dealloc
{
[ _sinaweibo release ];
}
在需要使用的视图控制器中,应用appdelegate
AppDelegate *appDelegate=[[UIApplication sharedApplication] delegate];
return appDelegate.sinaweibo
------------------------#sharedApplication#----------------------------------------
它里面的实现应该就是这样,返回一个UIApplication实例
static UIApplication * application = nil;
+(UIApplication*) shareApplication{
if(application == nil){
application= [[UIApplication alloc]init];
}
return application;
}