1.继承链:uiresponder:NSObject

2.使用 sharedApplication方法来存取对象

3.这个类可以遵守协议是UIApplicationDelegate

4.获取app的实例

    (1)+ (UIApplication *)sharedApplication  :返回单个app实例

5.获取app委托

    (1)@property(nonatomic, assign) id< UIApplicationDelegate> delegate  :设置委托

6.获取app窗口

    (1)@property(nonatomic, readonly) UIWindow*keyWindow  :app的关键窗口

    (2)@property(nonatomic, readonly) NSArray<__kindof UIWindow *> *windows  :返回app可见的,隐藏的窗口组成的数组

7.控制和控制事件

    (1)- (void)sendEvent:(UIEvent *)event  :给app里面合适的响应对象派遣事件

    (2)- (BOOL)sendAction:(SEL)action
                to:(id)target
              from:(id)sender
          forEvent:(UIEvent *)event  :

action

A selector identifying an action method. See the discussion for information on the permitted selector forms.

target

The object to receive the action message. If target is nil, the app sends the message to the first responder, from whence it progresses up the responder chain until it is handled.

sender

The object that is sending the action message. The default sender is the UIControl object that invokes this method.

event

UIEvent object that encapsulates information about the event originating the action message.

    (3)- (void)beginIgnoringInteractionEvents  :开始动画和转换之前调用这个方法通知接收者延迟处理和触摸相关的事件

    (4)- (void)endIgnoringInteractionEvents  :调用上面的方法、动画或者转换之后调用这个方法通知接收者重新处理和触摸相关的事件

    (5)- (BOOL)isIgnoringInteractionEvents  :返回布尔值是否让接收者忽视由屏幕上出现的触摸事件

    (6)@property(nonatomic) BOOL applicationSupportsShakeToEdit  :一个布尔值决定了设备摇动是否可以显示undo-redo user interface

8.打开一个URL资源

    (1)- (BOOL)openURL:(NSURL *)url  :尝试打开指定的URL,返回的值确定是否能够打开

    (2)- (BOOL)canOpenURL:(NSURL *)url  :返回布尔值确定app是否能够打开某个指定的URL路径

9.配置用户通知设置

    (1)- (void)registerUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings  :注册通知偏好

    (2)- (UIUserNotificationSettings *)currentUserNotificationSettings  :返回当前为app设置的通知设置

10.注册远程的通知

    (1)- (void)registerForRemoteNotifications  :登记远程的通知

    (2)- (void)unregisterForRemoteNotifications  :拒绝接受任何的远程通知

    (3)- (BOOL)isRegisteredForRemoteNotifications  :返回布尔值确定当前登记的是否为远程通知

11.登记本地通知

    (1)- (void)scheduleLocalNotification:(UILocalNotification *)notification  :传递本地封装的时间通知

    (2)- (void)presentLocalNotificationNow:(UILocalNotification *)notification  :立即显示本地的通知

    (3)- (void)cancelLocalNotification:(UILocalNotification *)notification  :取消传递指定的本地时间表通知

    (4)@property(nonatomic, copy) NSArray<UILocalNotification *> *scheduledLocalNotifications  :所有当前时间表的本地通知

12.管理后台执行

    (1)@property(nonatomic, readonly) UIApplicationStateapplicationState  :app运行时的状态

    (2)@property(nonatomic, readonly) NSTimeIntervalbackgroundTimeRemaining  :app在后台运行的时间

    (3)@property(nonatomic, readonly) UIBackgroundRefreshStatusbackgroundRefreshStatus  :有能力在后台执行的程序

    (4)- (void)setMinimumBackgroundFetchInterval:(NSTimeInterval)minimumBackgroundFetchInterval  :指定程序等待执行的时间

    (5)- (UIBackgroundTaskIdentifier)beginBackgroundTaskWithName:(NSString *)taskName
                                        expirationHandler:(void (^)(void))handler  :使用指定name来标志一个新的长时间运行的后台任务

    (6)-(UIBackgroundTaskIdentifier)beginBackgroundTaskWithExpirationHandler:(void (^)(void))handler  :标示一个新长时间运行的后台任务的开始

    (7)- (void)endBackgroundTask:(UIBackgroundTaskIdentifier)identifier  :标示指定的后台任务已经结束

13.管理app的闲置时间

    (1)@property(nonatomic, getter=isIdleTimerDisabled) BOOL idleTimerDisabled  :闲置时间是否能够为app所用

14.管理恢复行为的状态

    (1)- (void)extendStateRestoration  :告诉app代码开始异步恢复状态

    (2)- (void)completeStateRestoration  :告诉app已经异步恢复了状态

    (3)- (void)ignoreSnapshotOnNextApplicationLaunch  :Prevents the app from using the recent snapshot image during the next launch cycle.

    (4)+ (void)registerObjectForStateRestoration:(id<UIStateRestoring>)object
                    restorationIdentifier:(NSString *)restorationIdentifier  :为状态恢复系统注册一个自定义对象

15.管理Home Screen Quick Actions for 3D Touch

    (1)@property(nonatomic, copy) NSArray<UIApplicationShortcutItem *> *shortcutItems  :Set this property to register an array of dynamic quick actions to display on the Home screen when a user presses your app icon.

16.决定可以保护的内容

    (1)@property(nonatomic, readonly, getter=isProtectedDataAvailable) BOOL protectedDataAvailable  :返回值确定内容是否是被保护的

17.注册远程控制事件

    (1)- (void)beginReceivingRemoteControlEvents  :告诉app开始接受远程控制事件

    (2)- (void)endReceivingRemoteControlEvents  :告诉app结束接受远程控制事件

18.控制app的显示

    (1)@property(nonatomic, readonly) CGRectstatusBarFrame  :读取状态栏的位置和大小

    (2)@property(nonatomic, getter=isNetworkActivityIndicatorVisible) BOOL networkActivityIndicatorVisible  :网络是否能够使用

    (3)@property(nonatomic) NSIntegerapplicationIconBadgeNumber  :The number currently set as the badge of the app icon in Springboard.  

    (4)@property(nonatomic, readonly) UIUserInterfaceLayoutDirectionuserInterfaceLayoutDirection  :返回用户界面的布局方向

18.获取字体大小偏好

    (1)@property(nonatomic, readonly) NSString*preferredContentSizeCategory  :用户更加喜欢的字体大小选择

19.管理默认的界面方向

    (1)- (UIInterfaceOrientationMask)supportedInterfaceOrientationsForWindow:(UIWindow *)window  :返回指定窗口支持的界面方向

20.管理状态栏的方向

    (1)@property(nonatomic, readonly) NSTimeIntervalstatusBarOrientationAnimationDuration  :当设备90度转变的时候状态栏的动画转换

21.数据类型

    (1)UIStatusBarStyle类型

UIStatusBarStyleDefault,  :黑色的状态栏

UIStatusBarStyleLightContent,  :光亮的状态栏

UIStatusBarStyleBlackTranslucent,  :黑色透明的状态栏

UIStatusBarStyleBlackOpaque  :黑色不透明的状态栏

    (2)UIStatusBarAnimation类型

UIStatusBarAnimationNone,  :状态栏显示和隐藏的时候没有动画

UIStatusBarAnimationFade,  :状态栏显示和隐藏的时候使用渐隐渐现的动画

UIStatusBarAnimationSlide,  :状态栏显示和隐藏的时候使用滑动的动画

22.常量
    (1)UIApplicationState常量
UIApplicationStateActive,  :app正在前端运行并且接受事件
UIApplicationStateInactive,  :app正在前端运行但不接受事件
UIApplicationStateBackground    :app正在后台运行
    (2)Background Task Constants常量
const UIBackgroundTaskIdentifier UIBackgroundTaskInvalid;  :这个常量应该用来初始化一个常量或者检查一个错误
const NSTimeInterval UIMinimumKeepAliveTimeout;  :app应该在后台运行的时间

    (3)UIBackgroundFetchResult常量

UIBackgroundFetchResultNewData,  :新的数据成功载入

UIBackgroundFetchResultNoData,  :没有新的数据可以载入

UIBackgroundFetchResultFailed  :数据载入失败

23.通知

    (1)UIApplicationBackgroundRefreshStatusDidChangeNotification  :当backgroundRefreshStatus属性的值发生变化的时候就会发送这个通知

    (2)UIApplicationDidBecomeActiveNotification  :当app将要成为活跃状态的时候就会发送这个通知

    (3)UIApplicationDidChangeStatusBarFrameNotification  :当状态栏的frame发生改变结束的时候就会发送这个通知

    (4)UIApplicationDidChangeStatusBarOrientationNotification  :当app的用户界面的方向发生改变的时候就会发送这个通知

    (5)UIApplicationDidEnterBackgroundNotification  :当app进行后台的时候就会发送这个通知

    (6)UIApplicationDidFinishLaunchingNotification  :当app结束启动的时候就会发送这个通知

    (7)UIApplicationDidReceiveMemoryWarningNotification  :当可用运行内存不足的时候就会发送这个通知

    (8)UIApplicationProtectedDataDidBecomeAvailable  :当受保护的文件已经可以被使用的时候就会发送这个通知

    (9)UIApplicationProtectedDataWillBecomeUnavailable  :当受保护的文件被锁住变得不可以使用的时候就会发送这个通知

    (10)UIApplicationSignificantTimeChangeNotification  :当有重大的时间发生改变的时候就会发送这个通知,如改变到新的一天

    (11)UIApplicationUserDidTakeScreenshotNotification  :当按下home键和按钮来截图的时候就会发送这个通知

    (12)UIApplicationWillChangeStatusBarOrientationNotification  :当app改变了界面的方向的时候就会发送这个通知

    (13)UIApplicationWillChangeStatusBarFrameNotification  :当状态栏的frame开始发生改变的时候就会发送这个通知

    (14)UIApplicationWillEnterForegroundNotification  :当app将要从后台活跃到前端的时候就会发送这个通知

    (15)UIApplicationWillResignActiveNotification  :当app不再活跃或者失去关注的时候就会发送这个通知

    (16)UIApplicationWillTerminateNotification  :当app要终止的时候就会发送这个通知

    (17)UIContentSizeCategoryDidChangeNotification  :当用户改变设定的内容大小的时候就会发送这个通知

 
   

UIkit框架之uiUIapplication的更多相关文章

  1. Swift - 重写UIKit框架类的init初始化方法(以UITabBarController为例)

    原来写了篇文章讲UITabBarController的用法,当时是从UIViewController跳转到UITabBarController页面,代码如下: 1 self.presentViewCo ...

  2. UIKit框架

    在今后的应用程序构建中,会陆续使用各式各样的控件,因此UIKit框架的引入是必不可少的! 一.简介 UIKitk框架提供一系列的Class(类)来建立和管理iPhone OS应用程序的用户界面接口.应 ...

  3. iOS学习32之UIKit框架-可视化编程-XIB

    1. Interface Builder 可视化编程 1> 概述 GUI : 图形用户界面(Graphical User Interface, 简称GUI, 又称图形化界面) 是指采用图形方式显 ...

  4. 基础框架Fundation和UIkit框架的定义和使用

    Foundation 框架为所有应用程序提供基本的系统服务 您的应用程序以及 UIKit 和其他框架,都建立在 Foundation 框架的基础结构之上.Foundation 框架提供许多基本的对象类 ...

  5. iOS开发概述UIkit动力学,讲述UIKit的Dynamic特性,UIkit动力学是UIkit框架中模拟真实世界的一些特性。

    转发:http://my.oschina.net/u/1378445/blog/335014 iOS UIKit动力学 Dynamics UIAttachmentBehavior 实现iMessage ...

  6. iOS开发UIKit框架-可视化编程-XIB

    1. Interface Builder 可视化编程 1> 概述 GUI : 图形用户界面(Graphical User Interface, 简称GUI, 又称图形化界面) 是指采用图形方式显 ...

  7. 79、iOS 的Cocoa框架、Foundation框架以及UIKit框架

    Cocoa框架是iOS应用程序的基础 1. Cocoa是什么? Cocoa是 OS X和ios 操作系统的程序的运行环境. 是什么因素使一个程序成为Cocoa程序呢?不是编程语言,因为在Cocoa开发 ...

  8. UIKit 框架之UIView二

    下面这些都是UIView一些基本的东西,具体的可以参考UIKit 框架之UIView一博客 一.自定义一个View // // MyView.m // UIView // // Created by ...

  9. UIKit 框架之Bar、Controller

    UIKit框架中有各种Bar,UITabBar.UINavigationBar.UIToolbar.Bar对应的就有一些Item,tabBarItem.navigationItem.toolbarIt ...

随机推荐

  1. ef join 用法

    var customers = DB.Customer.Join(DB.Commission, cst => cst.CommissionId,                          ...

  2. outline使用方法,outline与border的区别:

    在浏览器里,当鼠标点击或使用Tab键让一个链接或者一个radio获得焦点的时候,该元素将会被一个轮廓虚线框围绕.这个轮廓虚线框就是 outline . outline 能告诉用户那一个可以激发事件的h ...

  3. BZOJ AC800纪念

    貌似没什么好纪念的...QAQQQ 好不容易水到了800还是记录一下好了....不过感觉水这么多题没有意义啊[思考熊] 然后就没有然后了恩 不过我到底是为什么才努力的呢...前途一阵迷茫,根本没有什么 ...

  4. mysql 删除重复记录语句

    mysql 根据条件删除重复记录 只保留最小id的重复数据 DELETEFROM newsWHERE news_id IN ( SELECT a.news_id FROM ( SELECT news_ ...

  5. asp.net ajax与jquery的冲突问题解决

    在网上看到有网友说,用了updatepannel这个asp.net ajax异步更新面板后,javascript或者jquery代码不起作用,实际上,可以在updatepannel的触发器中进行设置解 ...

  6. Nehe Opengl

    http://nehe.gamedev.net/tutorial/lessons_01__05/22004/ Nehe Opengl,据说从基础到高端进阶都是很好的教程,准备学习这个序列,顺便记录下随 ...

  7. #define DELAY_ONE_MICROSECOND (-10) 时间是负数的原因

    以下摘自DOOM的博文<内核同步对象> http://blog.csdn.net/lqk1985/article/details/2541867 “最后一个参数&timeout是一 ...

  8. android中添加背景音乐

    方法一:这是使用java中的多线程,另外new出一个类,用类来启动音乐. 这个方法,就像当初写java的小游戏一样,不过是在电脑上运行的,可以控制每一个动作,比如你的触碰动作,但是,在我这个游戏中,我 ...

  9. 【转】MyEclipse开发Web项目发布到Tomcat下的Root目录

    通常情况下,Web项目是发布到Tomcat下的webapps文件目录下的 .以至于我们访问的时候: 例如:Web应用项目名称为:webManager,则部署到tomcat后,是部署在tomcat/we ...

  10. Mysql 连接sleep状态问题解决。

    昨日mysql总是出问题,各种程序在运行时,出现了连接已断开的问题.  导致此问题的原因: 1. 最大连接数 2. 网络问题 3. mysql服务器资源问题 然而,上面最常见的3个问题都没有出现.后来 ...