資源描述:
《ios應(yīng)用開發(fā)教程》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、《IOS應(yīng)用開發(fā)教程》QQ學(xué)習(xí)群:262779381http://www.xs#第五章IOS基礎(chǔ)界面編程QQ學(xué)習(xí)群:262779381教學(xué)目標(biāo):1、掌握IOS開發(fā)基本界面布局。2、掌握UIWindow與UIView的關(guān)系,并掌握UIView常見子類的使用方法。3、掌握IOS中的坐標(biāo)系統(tǒng)。4、IOS中常用控件的使用。QQ學(xué)習(xí)群:2627793815.1UIWindow和UIView在IOS平臺(tái)上運(yùn)行的應(yīng)用程序都有一個(gè)UIApplication類的對(duì)象,UIApplication類繼承域UIResponder類,它是IOS應(yīng)用程序的起點(diǎn),并
2、且負(fù)責(zé)初始化和顯示UIWindow,它還將接受事件,通過委托“UIAppliactionDelegate”來處理,還有一重要的功能就是幫助管理應(yīng)用程序的生命周期。QQ學(xué)習(xí)群:262779381應(yīng)用程序狀態(tài)表QQ學(xué)習(xí)群:262779381狀態(tài)名稱說明Notrunning(未運(yùn)行)程序沒有啟動(dòng)Inactive(未激活)程序在前臺(tái)運(yùn)行,但沒有接收到事件Active(激活)程序在前臺(tái)運(yùn)行,而且接收到事件Background(后臺(tái))程序在后臺(tái)但能執(zhí)行代碼Suspended(掛起)程序在后臺(tái)不能執(zhí)行代碼QQ學(xué)習(xí)群:262779381正如在上表與圖中看到的幾個(gè)
3、程序狀態(tài),系統(tǒng)要做出不同的事件處理。UIApplication的一個(gè)主要人任務(wù)就是處理用戶事件,它會(huì)創(chuàng)建一個(gè)隊(duì)列,將所有用戶事件都放入隊(duì)列中,在處理過程中,它會(huì)發(fā)送當(dāng)前事件到一個(gè)合適處理事件的控件。換句話說,UIApplication類并不具體實(shí)現(xiàn)某項(xiàng)功能,它只是負(fù)責(zé)監(jiān)聽事件,當(dāng)需要實(shí)際完成工作時(shí),就將工作分配給UIApplicationDelegate去完成。而在UIApplicationDelegate中定義了很多協(xié)議需要實(shí)現(xiàn)。這些協(xié)議中定義好的方法就是UIApplication對(duì)象監(jiān)聽到系統(tǒng)變化的時(shí)候通知UIApplication對(duì)象代理類
4、執(zhí)行的相應(yīng)方法。QQ學(xué)習(xí)群:2627793811.-(void)applicationWillResignActive:(UIApplication*)application此方法在應(yīng)用程序?qū)⒁M(jìn)入到非活動(dòng)狀態(tài)執(zhí)行,在此期間,應(yīng)用程序不接受消息。2.-(void)applicationDidBecomeActive:(UIApplication*)application此方法在應(yīng)用程序?qū)⒁M(jìn)入到活動(dòng)狀態(tài)執(zhí)行,和第一個(gè)方法相反。3.-(void)applicationDidReceiveMemoryWarning:(UIApplication*)a
5、pplication執(zhí)行這個(gè)方法可以進(jìn)行內(nèi)存清理防止程序被太多內(nèi)存所占用而導(dǎo)致終止。4.-(void)applicationDidFinishLaunching:(UIApplication*)application這個(gè)方法的功能是在程序載入后可以執(zhí)行一些用戶需要的操作。5.-(void)applicationDidEnterBackground:(UIApplication*)application這個(gè)方法是在程序被推送到后臺(tái)的時(shí)候調(diào)用。注意:若在代碼中提示release錯(cuò)誤,說明程序使用了ARC(AutomaticReferenceCount
6、ing)機(jī)制,只需要去掉release方法,或者勾選去除ARC機(jī)制,去除方法在BuildingSettings中的AppleLLVM6.0-Language-Objective-C。QQ學(xué)習(xí)群:262779381#import"AppDelegate.h"@implementationAppDelegate-(BOOL)application:(UIApplication*)applicationdidFinishLaunchingWithOptions:(NSDictionary*)launchOptions{self.window=[[UIW
7、indowalloc]initWithFrame:[[UIScreenmainScreen]bounds]];//Overridepointforcustomizationafterapplicationlaunch.self.window.backgroundColor=[UIColorcyanColor];[self.windowmakeKeyAndVisible];returnYES;}-(void)applicationWillResignActive:(UIApplication*)application{NSLog(@"應(yīng)用正處于非活
8、動(dòng)狀態(tài)!");}-(void)applicationDidEnterBackground:(UIApplication*)applica