美文网首页
UIApplication

UIApplication

作者: 石玉龙 | 来源:发表于2016-11-05 17:40 被阅读114次

一个应用程序入口;

[UIApplication sharedApplication]; 获得对象

应用级别的操作:

1) 设置应用程序图标右上角的气泡数字;

[UIApplication sharedApplication].applicationIconBadgeNumber = 10;

2) 设置网络指示器:

[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;

3) 设置状态栏:

iOS 7开始提供两种管理状态栏的方式:

1> UIApplication管理:

info.plist中设置View controller-based status bar appearance 为NO;

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

2> 控制器中管理:

- (BOOL)prefersStatusBarHidden

{

return NO;

}

- (UIStatusBarStyle)preferredStatusBarStyle

{

return UIStatusBarStyleLightContent;

}

4) openURL:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://10086"]];

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"sms://10086"]];

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto://iosshiyulong@yeah.net"]];

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.baidu.com"]];

URL:统一资源定位符,用来唯一的表示一个资源;

URL格式: 协议头://主机地址/资源路径

网络资源:http/ftp;

本地资源:file:///users/apple/desktop/log.png

UIApplication Delegate:委托处理应用程序各种环境下的系统事件;

启动完毕的回调方法:- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;

进入后台的回调方法:- (void)applicationDidEnterBackground:(UIApplication *)application;

内存警告的回调方法:- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application;

main函数:

#import <UIKit/UIKit.h>

#import "AppDelegate.h"

int main(int argc, char * argv[]) {

@autoreleasepool {

return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));

}

}

argc:系统或者用户传入的参数个数;

argv:系统或者用户传入的实际参数;

1> 根据传入的第三个参数创建UIApplication对象;

2> 根据传入的第四个产生创建UIApplication对象的代理;

3> 设置刚刚创建出来的代理对象为UIApplication的代理;

4> 开启一个事件循环;

程序启动的完整过程:

1> main函数;

2> UIApplicationMain:创建UIApplication对象;创建UIApplication的delegate对象;

3> delegate对象开始处理(监听)系统事件:

A : 没有storyboard

程序启动完毕的时候,就会调用代理的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;方法;

在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;方法中创建UIWindow对象;

创建和设置UIWindow的rootViewController;

显示窗口;

B : 有storyboard

创建UIWindow;

创建和设置UIWindow的rootViewController;

显示窗口;

相关文章

网友评论

      本文标题:UIApplication

      本文链接:https://www.haomeiwen.com/subject/iocguttx.html