UIApplication *app = [UIApplication sharedApplication];
UIApplication *app1 = [UIApplication sharedApplication];
UIApplication *app2 = [[UIApplication alloc] init];
NSLog(@"%p %p %p", app, app1, app2);
这里错误显示不能调用init方法,而且写着UIApplication是单例
@property(nonatomic) NSInteger applicationIconBadgeNumber;
<span style="font-size:18px;">IOS7:
UIApplication *app = [UIApplication sharedApplication];
// 应用程序右上角数字
app.applicationIconBadgeNumber = 10;
上面的代码可以搞定
IOS8:
iOS8中设置application badge value 会抛错:Attempting to badge the application icon but haven't received permission from the user to badge the
原因是因为在ios8中,设置应用的application badge value需要得到用户的许可。使用如下方法咨询用户是否许可应用设置application badge value
UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:settings];
在这之前要判断系统是否为iOS8的系统,否则8之前的系统会报错。
UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:settings];
UIApplication *app = [UIApplication sharedApplication];
// 应用程序右上角数字
app.applicationIconBadgeNumber = 10; </span><span style="font-size: 28pt;">
</span>
@property(nonatomic,getter=isNetworkActivityIndicatorVisible) BOOL networkActivityIndicatorVisible;
-(UIStatusBarStyle)preferredStatusBarStyle;
- (BOOL)prefersStatusBarHidden;
-(BOOL)openURL:(NSURL*)url;
UIApplication *app = [UIApplicationsharedApplication];
[app openURL:[NSURLURLWithString:@"tel://10086"]];
[app openURL:[NSURLURLWithString:@"sms://10086"]];
[app openURL:[NSURLURLWithString:@"mailto://12345@qq.com"]];
[app openURL:[NSURLURLWithString:@"http://ios.itcast.cn"]];
直接将view添加到UIWindow中,但并不会理会view对应的UIViewController
自动将rootViewController的view添加到UIWindow中,负责管理rootViewController的生命周期
让当前UIWindow变成keyWindow(主窗口)
让当前UIWindow变成keyWindow,并显示出来
在本应用中打开的UIWindow列表,这样就可以接触应用中的任何一个UIView对象
(平时输入文字弹出的键盘,就处在一个新的UIWindow中)
用来接收键盘以及非触摸类的消息事件的UIWindow,而且程序中每个时刻只能有一个UIWindow是keyWindow。如果某个UIWindow内部的文本框不能输入文字,可能是因为这个UIWindow不是keyWindow
获得某个UIView所在的UIWindow