国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

讀書筆記-基礎

2019-11-14 18:17:14
字體:
來源:轉載
供稿:網友

1、iOS的系統架構分為4層——Cocoa Touch層、Media層、Core Services層和Core OS層。

2、自動布局(Auto Layout)最先應用于Mac 0S X 10.7的開發,它為視圖布局定義一套約束,而約束定義了兩個界面中視圖之間的關系。

3、AppDelegate是應用程序委托對象,繼承了UIResponder類,并實現了UIapplicationDelegate委托協議。前者使子類AppDelegate具有處理相應時間的能力,而后者委托協議使其能夠成為應用程序委托對象,這種對象能夠響應應用程序的生命周期。相應的,AppDelegate的子類也能夠實現這兩個功能。

4、ViewController類繼承自UIViewController類,它是視圖控制器類,在工程中扮演著根視圖和用戶事件控制類的角色。 

5、nib等同于xib。一般而言,一個工程中可以有多個xib文件,一個xib文件對應著一個視圖控制器和多個視圖,而使用故事版時,一個工程只需要一個故事板文件就可以了。故事板還可以描述界面之間的導航關系。 事實上,故事板是多個xib文件集合的描述文件,也采用xml格式。

6、應用的生命周期:作為應用程序的委托對象,AppDelegate類在應用生命周期的不同階段會回調不同的方法。

下面簡要介紹下iOS應用的的5種狀態。

Not Running(非運行狀態)。應用沒有運行或被系統終止。

Inactive(前臺非活動狀態)。應用正在進入前臺狀態,但是還不能接受事件處理。

Active(前臺活動狀態)。應用進入前臺狀態,能接受事件處理。

Background(后臺狀態)。應用進入后臺后,依然能夠執行代碼。如果有可執行的代碼就會執行代碼,如果沒有可執行的代碼或者將可執行的代碼執行完畢,應用會馬上進入掛起狀態。

Suspended(掛起狀態)。處于掛起的應用進入一種“冷凍“狀態,不能執行代碼。如果系統內存不夠,應用會被終止。

在應用狀態躍遷的過程中,iOS系統會回調AppDelegate中的一些方法,并且發送一些相應的通知:

application:didFinishLaunchingWithOptions:應用啟動并進行初始化時會調用該方法并發出通知,這個階段會實例化根視圖控制器。

applicationDidBecomeActive:應用進入前臺并處于活動狀態時調用該方法并發出通知。這個階段可以恢復UI的狀態。

applicationWillResignActive:應用從活動狀態進入到非活動狀態時調用該方法并發出通知。這個階段可以保存UI的狀態。

applicationDidEnterBackground:應用進入后臺時調用該方法并發出通知。這個階段可以保存用戶數據,釋放一些資源(例如數據庫資源等)

applicationWillEnterForeground:應用進入到前臺,但是還沒有處于活動狀態時調用該方法并發出通知。這個階段可以恢復用戶數據。

applicationWillTerminate:應用被終止時調用該方法并發出通知,但內存清除時除外。這個階段釋放一些資源,也可以保存用戶數據。

下面我們以幾個應用場景為切入(具體分析就不寫了,相信大家肯定也都能理解):

應用啟動場景:Not running→Inactive→Active 

應用退出場景:該場景的狀態躍遷過程可以分為兩種情況,可以在后臺運行或掛起和不可以。根據產品屬性文件中的相關屬性Application does not run in background可以控制這兩種這兩種狀態。

(1)應用可以在后臺運行或掛起:Active → Inactive → Background→Suspended 

(2)應用不可以在后臺運行或掛起:Active → Inactive → Background→Suspended→Not running

掛起重新運行場景:Suspended → Background → Inactive → Active

內存清除-應用終止場景: Background→Suspended→Not running

7、視圖生命周期

在視圖不同的生命周期中,視圖控制器會回調不同的方法。

在視圖控制器已被實例化,視圖被加載到內存中時調用viewDidLoad方法,這個時候視圖并未出現。在該方法中,通常進行的是對所控制的視圖進行初始化處理。

視圖可見前后會調用viewWillAppear:方法和viewDidAppear:方法。視圖不可見前后會調用viewWiiDisappear:和viewDidDisappear:方法。4個方法調用父類相應的方法以實現其功能,編碼時該方法的位置可根據情況做以調整,如下:

1 -(void)viewWillAppear:(BOOL)animated 2 { 3 [super viewWillAppear:YES];

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 浑源县| 泽普县| 镇安县| 金阳县| 太保市| 荣成市| 易门县| 双流县| 河北区| 娄烦县| 馆陶县| 抚顺县| 英吉沙县| 枞阳县| 砀山县| 涿州市| 阿坝| 甘洛县| 定襄县| 永德县| 康平县| 南康市| 邛崃市| 棋牌| 泉州市| 天柱县| 旬邑县| 乐东| 龙胜| 石渠县| 潮安县| 珲春市| 得荣县| 开平市| 内黄县| 怀安县| 迁西县| 芦溪县| 虞城县| 庐江县| 包头市|