<1>UIApplication的对象是单例对象   类方法:UIApplication *app = [UIApplication sharedAppplication]
<2>UIScreen的对象是单例对象         类方法:UIScreen *screen = [UIScreen mainScreen]
    UIApplication的代理的协议的一些操作:
   
     启动应用程序,代理帮助实现的程序状态的转换
  
 
UIApplication 应用程序对象的常用设置
 (1)设置应用程序图标右上角的红色提醒数字(如QQ消息的时候,图标上面会显示1,2,3条新信息等) Badge
    @property(nonatomic) NSInteger applicationIconBadgeNumber;
 
 (2)设置联网指示器的可见性
          @property(nonatomic,getter=isNetworkActivityIndicatorVisible) BOOL networkActivityIndicatorVisible;
 
(3)说明:其实状态栏的管理,每一个单独的视图控制器可以管理,也可以让唯一的UIApplication的对象统一管理。
方式一:app统一管理:
    
        状态栏的样式    -(UIStatusBarStyle)preferredStatusBarStyle; 
                  app.statusBarStyle=UIStatusBarStyleDefault;//默认(黑色)
        状态栏的可见性   -(BOOL)prefersStatusBarHidden; 
                        app.statusBarHidden=YES //隐藏
 
方式二:每一个视图控制器单独管理:
 //隐藏状态栏

-(BOOL)prefersStatusBarHidden

{

return NO;

}

//设置状态栏的样式

-(UIStatusBarStyle)preferredStatusBarStyle

{

return UIStatusBarStyleLightContent;

}

 
  (4)UIApplication有个功能十分强大的openURL:方法
 
URL:统一资源定位符,用来唯一的表示一个资源。
URL格式:协议头://主机地址/资源路径

-(BOOL)openURL:(NSURL*)url;

 -openURL:方法的部分功能有 
打电话   [app openURL:[NSURLURLWithString:@"tel://10086"]]; 
发短信  [app openURL:[NSURLURLWithString:@"sms://10086"]]; 
发邮件  [app openURL:[NSURLURLWithString:@"mailto://12345@qq.com"]]; 
打开一个网页资源 [app openURL:[NSURLURLWithString:@"http://www.baidu.com"]]; 
        

    以下是代码的具体体现:

 #import "ViewController.h"

 @interface ViewController ()

 @end

 @implementation ViewController

 - (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self.view setBackgroundColor:[UIColor blackColor]];
} - (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
//每一个视图控制器单独控制自己的状态栏
//隐藏状态栏
-(BOOL)prefersStatusBarHidden
{
return NO;
} //设置状态栏的样式
-(UIStatusBarStyle)preferredStatusBarStyle
{
return UIStatusBarStyleLightContent;
}
@end

   Application对象完成的各种功能:

 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch. //在iOS8中,必须经过用户允许才能设置badge/alert/sound
UIUserNotificationSettings *setting = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge |UIUserNotificationTypeAlert | UIUserNotificationTypeSound categories:nil]; UIApplication *app = [UIApplication sharedApplication];
[app registerUserNotificationSettings:setting]; //设置应用程序图标上显示的提醒数字
app.applicationIconBadgeNumber = ; //设置联网指示器的可见性(默认是NO)
app.networkActivityIndicatorVisible = YES; //设置状态栏的样式
app.statusBarStyle = UIStatusBarStyleLightContent; //隐藏状态栏
app.statusBarHidden = NO; //openURL功能(URL统一资源定位符)
//1.打电话
[app openURL:[NSURL URLWithString:@"tel://10086"]]; //2.发短信
[app openURL:[NSURL URLWithString:@"sms://10086"]]; //3.发邮件
[app openURL:[NSURL URLWithString:@"mailto://1360074459@qq.com"]]; //4.打开网络资源
[app openURL:[NSURL URLWithString:@"http://www.baidu.com"]]; //5.打开其他的应用程序
[app openURL:[NSURL URLWithString:@"prefs:"]]; return YES;
}

iOS:UIApplication和它对象的代理的更多相关文章

  1. iOS UIApplication sharedapplication用法

    应用中打开其他应用 我们来讨论一下,在iOS开发中,如何实现从app1打开app2. 基本的思路就是,可以为app2定义一个URL,在app1中通过打开这个URL来打开app2,在此过程中,可以传送一 ...

  2. iOS数据存储之对象归档

    iOS数据存储之对象归档 对象归档 对象归档是iOS中数据持久化的一种方式. 归档是指另一种形式的序列化,但它是任何对象都可以实现的更常规的类型.使用对模型对象进行归档的技术可以轻松将复杂的对象写入文 ...

  3. 作为UIApplication单例对象的方法 openURL方法的变化

    作为UIApplication单例对象的方法 openURL: 在iOS开发中经常用来实现在当前应用打开外部链接的需求比如跳转到其他应用,跳转应用隐私设置界面;还有相关API canOpenURL:  ...

  4. NSNotification,NSNotificationCenter的使用、iOS中五种对象间传值的方式

    学习内容 NSNitification与NotificationCenter(通知与通知中心) 通知的使用 [[NSNotificationCenter defaultCenter]addObserv ...

  5. 【iOS [[UIApplication sharedApplication] delegate]】运用

    之前想要拿到app的窗口,我们通常的写法是: [UIApplication sharedApplication].keyWindow 这种写法之前一直也觉得是正确的,没什么问题,而且网上大多数的博客或 ...

  6. IOS开发之类和对象

    IOS开发之类和对象 OC和Java一样都是一种面向对象的语言,从今天開始我和大家一起来系统学习这样的面向对象的语言oc,欢迎大家什么问题和我一起探讨和学习. OC定义类有两个步骤:1.接口部分(通俗 ...

  7. 使用wsimport生成不带JAXBElement对象的代理

    如果想使用wsimport生成不带JAXBElement对象的代理,则可以使用jaxws/jaxb绑定文件,如文件命名为binding.txt,内容如 <jaxb:bindings versio ...

  8. iOS 10.3下解决Fiddler代理抓包ssl证书信任问题

    iPhone系统更新到iOS 10.3以后,设置fiddler代理抓包,会出现无法抓取https请求,app请求失败的问题 这是因为在iOS 10.3之前,当你将安装fiddler的自定义证书后,iO ...

  9. UIApplication对象及其代理UIApplicationDelegate[转]

    在开发过程中我们需要一些全局对象来将程序的各个部分连接起来,这些全局对象中最重要的就是UIApplication对象.但在实际编程中我们并不直接和UIApplication对象打交道,而是和其代理打交 ...

随机推荐

  1. sql server 存储过程解密

    Create PROCEDURE [dbo].[sp_windbi$decrypt] () AS /**//* 王成辉翻译整理,转贴请注明出自微软BI开拓者www.windbi.com 调用形式为: ...

  2. Python全栈开发之1、输入输出与流程控制

    Python简介 python是吉多·范罗苏姆发明的一种面向对象的脚本语言,可能有些人不知道面向对象和脚本具体是什么意思,但是对于一个初学者来说,现在并不需要明白.大家都知道,当下全栈工程师的概念很火 ...

  3. loadrunner中自定义查找并替换函数

    globas.h中定义 //LoadRunner中没有直接的函数支持查找并替换字符串,因此可以封装一个lr_replace函数出来: // ------------------------------ ...

  4. C# 字符串提取数字

    转自:http://www.cnblogs.com/dolphin-gjh/p/6121792.html 一.使用正则表达式 1 string str = "sztq数字提取123sztq数 ...

  5. STL容器 -- Set

    核心: set 是一个数学含义上的集合-----保证了每个数的确定性, 互异性, 不仅如此, set 中的元素还是有序的. 头文件: #include <set> 拓展:由于 set 内的 ...

  6. shell grep 筛选

    egrep '^.{11}(WP)' inputfile | sort -k1.17,1.24 > outputfile WP 在12位开始.

  7. java面试题一

    个人的一点参考总结,如有雷同,纯属巧合! 1.hashmap的实现原理以及hashtable的线程安全是怎么实现的?HashMap其实也是一个线性的数组实现的,所以可以理解为其存储数据的容器就是一个线 ...

  8. TCP/IP——IP网络协议简记

    IP提供不可靠.无连接的数据报传送服务 不可靠:不保证IP数据报能成功到达目的地,当发生错误时,IP的做法是丢弃这个数据报,然后发送ICMP消息报给信息源. 无连接:IP不维护任何关于后续数据报的状态 ...

  9. Redis学习篇(三)之Key相关操作

    KEYS 作用:返回所有的给定模式的key 语法:KEYS pattern 通配符: *: 任意个字符 ?: 任意一个字符 []: 匹配[]之间的字符 [a-z] [A-Z] \x: 匹配特殊字符 ? ...

  10. 什么是P问题、NP问题和NPC问题

    为了迎接我的期末考试,认真的看了一下关于NP完全性理论这一章,奈何课本上说的我怎么都看不懂,所以找了个博客认真研究了一下,同样贴出来分享给大家,大牛就是大牛,把问题说的很明白,看完后受益匪浅.其中有一 ...