基於XCode開發iPhone APP程式結構教程

來源:互聯網
上載者:User

基於XCode開發iPhone APP程式結構教程是本文要介紹的內容,以下分析是基於Xcode進行iphone開發的代碼。通過Xcode IDE在設計時可以自動做很多事;但是這些事意義何在,怎麼將整個APP貫穿起來。分析瞭解之後,就可以知道應用程式大致結構,運作機制。基於此,以後也就只需瞭解特定的控制項或功能庫的使用了。

IPhone程式的結構

所有的iphone程式,都是案頭視窗程式;在可見度方面看,所見的一切都是視窗,因為它們都繼承於共同的基類UIControl:

每個Iphone程式都有一個主視窗;

而每個顯示的子視窗也是視窗;

每個控制項也都是子視窗

以通用的單視窗程式和多視窗程式舉例而言:

對於單視圖程式而言,就是主視窗內部包含子視窗;

對於多視窗程式而言,

就是主視圖包含一個特殊的子視窗:多視窗控制器。

而多視窗控制器則包含每個子視窗

因此,可以說,視窗之間存在父子內含項目關聯性:

一個主視窗僅且只能包含一個子視窗

該子視窗可以是一個具體的子視窗;這就是單視窗程式

該子視窗是一個多視窗控制器;這就是多視窗程式

一個子視窗可能包含著多個控制項,這些控制項也都是子視窗

多視窗控制器也是一個子視窗;它的作用是將子視窗當作其一個個控制項來管理

理解如上邏輯組織圖,就可以看看在物理上是如何通過檔案來表現的。

IPhone程式的物理組織

子視窗

每個子視窗由兩部分組成:資源檔和控制檔案。分別介紹如下:

可見操作起來是很麻煩,完全不如MFC中的自動一步到位;而且每類控制項對應的類型也不能自動提示出來
 
MVC層次

V – 視圖層
 
C – 控制層
 
MFC比較

資源檔 rc
 
映射類
 
與MFC區別在於:

Xlb中既包括資源資訊,也包括控制項和成員對象映射資訊

而MFC中將控制項和成員映射資訊放在了對應類中

可以看出子視窗的兩個作用:介面和控制;控制負責管理子視窗控制項對象及其訊息。

主視窗

主視窗的作用也是兩個:介面和控制。

介面還是通過xlb資源檔來實現;只不過該介面很簡單,只是負責放哪個子視窗。該檔案名稱固定是MainWindow.xlb

控制則沒有單獨的控制檔案。因為其作用很簡單,只是負責放哪個子視窗,所以完全通過UIApp的介面來實現即可。也就是一個APP的代理類。代理類的檔案名稱就是“projectname”AppDelegate.

應用程式

每個應用程式還有些別的固定檔案:

main.m    應用程式起始檔案

Info.plist 應用程式的一些配置資訊:例標等。

瞭解了如上檔案組織圖,分析一個例子則可以很快知道大致架構;各個功能各依存於何處。也可以瞭解一些Xcode互動幕後產生代碼的意義。

IPhone程式的生命週期

多視窗程式就是出現多個子視窗;而多視窗控制器就是Iphone提供的有限幾個。

Iphone開發的參考體系

介面布局控制項

主要是特殊的控制項、特殊的事件響應

持久層

應用程式在Iphone中的部署以及訪問局限性

繪圖

關於以的個人理解

view 類似於window中的控制項(例如對話方塊),可以添加一些響應事件,同時有兩個檔案.h和.m兩個檔案對象.

File's Owner類似window的類嚮導,用來添加響應處理,同時操作.h和.m檔案

小結:基於XCode開發iPhone APP程式結構教程的內容介紹完了,希望本文對你有所協助!

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.