转自:http://psvsps2.blogspot.com/2010/04/uiapplication-contents-application_20.html
UIApplication 簡單筆記
所有的 iPhone 應用程式都有唯一的一個 UIApplication instance,這個 instance 提供 GUI 程式訊息(Event)處理的主迴圈(如果你寫過 Win32 sdk 程式應該很清楚這玩意),和一些 屬於應用程式的外觀設定和行為,如 status bar, Application Icon Badge Number等等。
UIApplication 會用到的東西其實沒有很多,這邊簡單介紹一下常用的部份。
iPhone 3.0 新增的酷炫功能! 搖晃手機 undo也是在 UIApplication 裡面設定的。
UIApplication* app = [UIApplication sharedApplication];
// 是的!搖晃時 undo
app.applicationSupportsShakeToEdit = YES;
基於行動裝置電力有限的原則下,還有全球節能減碳的潮流,iPhone 應用程式一般 來說一定時間沒有使用會直接進入睡眠狀態,Apple 的文件是說除非你真的十分確定 你要關閉才關,如何關閉這功能? 請看範例:
UIApplication* app = [UIApplication sharedApplication];
// 關閉自動睡眠計時器
app.idleTimerDisabled = YES;
我們都知道 iPhone 可以知道自己在旋轉,並針對垂直或水平提供不同的畫面佈局, status bar 的相關設定用法如下:
UIApplication* app = [UIApplication sharedApplication];
app.statusBarOrientation = UIInterfaceOrientationLandscapeLeft;
ok 想要隱藏 status bar的話,也很簡單:
UIApplication *app = [UIApplication sharedApplication];
app.statusBarHidden = YES;
當然啦這種布林狀態的東西常常需要的動作其實是 toggle,也很簡單:
UIApplication *app = [UIApplication sharedApplication];
(app.statusBarHidden) ? (app.statusBarHidden = NO) : (app.statusBarHidden = YES);
Network Active Indictor 是什麼? 看圖最清楚:
控制他顯示與否:
UIApplication *app = [UIApplication sharedApplication];
(app.networkActivityIndicatorVisible) ? (app.networkActivityIndicatorVisible = NO) : (app.networkActivityIndicatorVisible = YES);
iPhone OS 4.0 的新特色--多工,因應這個新東西 UIApplicaiton 也提供一些背景執行 需要的功能和資訊。
properties 方面
applicaitonState 可以得知目前應用程式所處的狀態如 active, background 等等 下面是完整的資訊:
typedef enum {
UIApplicationStateActive,
UIApplicationStateInactive,
UIApplicationStateBackground
} UIApplicationState;
backgroundTimeRemaining 顯示應用程式剩餘多少時間進入 background 的 suspended 狀態。
iPhone OS 4.0 允許應用程式進入背景後要求額外的系統資源 (cpu time) 來處理額外或是比較 大量的工作,由下面兩個 method 處理這方面的要求和結束要求,記住系統資源是有限的,記憶體 如此, cpu time 亦是如此,請明確使用endBackgroundTask:來釋放多工的系統資源。
UIApplication 是個很簡單易懂也十分重要的,希望這篇會有幫助。
分享到:
相关推荐
application开发使用
这是我在学习ios的过程中写的一个demo。介绍ios的UIApplication。
UIApplication深入学习让你不在惧怕ios面试
个人总结,仅供参考;废话一句,全为二十。
UIApplication_Delegate
详细图解方式描述UIApplication运行生命周期
UIApplication
IOS 中UIApplication详解及实例 以前刚学iPhone开发时,觉得UIApplication这个东西特NB,特神秘,比如它居然能打开一个URL,而且还是用一个很神秘的方法得到实例: [UIApplication sharedApplication] 它对我的...
A feature-rich application help class inherited from UIApplication. 安装 You only need drag LxApplication.h and LxApplication.m to your project. 支持 Minimum support iOS version: iOS 5.0 用法 ...
UIApplication设置程序图标右上⾓红⾊数字_联⺴指⽰器等
android sdk Userinterface注意事项。以及大致结构框架。
1.简单介绍 (1)UIApplication对象是应用程序的象征,一个UIApplication对象就代表一个应用程序。 (2)每一个应用都有自己的UIApplication对象,而且是单例的,如果试图在程序中新建一个UIApplication对象,那么将...
ios hook 小试牛刀(一)ios hook 小试牛刀(一)ios hook 小试牛刀(一)ios hook 小试牛刀(一)ios hook 小试牛刀(一)ios hook 小试牛刀(一)ios hook 小试牛刀(一)
这个函数主要负责三件事情: 1)从给定的类名初始化应用程序对象,也就是初始化UIApplication或子类对象的一个实例,如果你在这里给定的是nil,那么系统会替换UIApplication类,也就主要是这个类来控制以及协调...
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] ...
使用 Objective C 编写的 Mac OS 风格横幅,通过在 UIApplication 的 UIWindow 中添加 UIView 来尊重 iOS 的 iOS7 和 iOS8。 它添加为 ALL 的另一个视图顶部。 另外,使用块来关闭和触摸事件。 你喜欢它? 在您的...
2.重写AppDelegate中的- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url和- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)...
harmonyos英文怎么读 Lite-Wearable 华为DevEco Studio (HamonyOS) 开发可穿戴应用程序系列 学习交流 鸿蒙OS技术交流QQ群:714518656 公众号:HarmonyBus 官方开源学习社区: 视频课程:
UIApplication.sharedApplication.delegate; 反对: [view setBackgroundColor:[UIColor orangeColor]]; [UIApplication sharedApplication].delegate; 间距 一个缩进使用 4 个空格,永远不要使用制表符(tab)缩进...