iOS的主要框架介紹 (轉載)

本文是《Sunvey the Major Framworks》一文的翻譯ios

       框架是一個目錄,這個目錄包含了共享庫,訪問共享庫裏代碼的頭文件,和其它的圖片和聲音的資源文件。一個共享庫定義的方法或函數能夠被應用程序調用。web

       iOS提供了不少你能夠在應用程序裏調用的框架。要使用一個框架,須要將它添加到你的項目中,你的項目纔可使用它。許多應用程序都使用瞭如Foundation、UIKit、和Core Graphics這些框架。根據你爲應用程序選擇的模版,相關的框架就已經被自動引入了。若是默認加入的框架不能知足你的應用程序的需求,你也能夠加入須要的框架。數組

       看看HelloWorld.xcodeproj項目裏都包含了哪些框架(注:HelloWorld.xcodeproj是《Your First ios App tutorial 》這篇教程裏的一個項目)xcode

       1.在XCode裏打開HelloWorld.xcodeproj項目(若是尚未打開)網絡

       2. 在project navigator窗口裏點擊,點擊Frameworks目錄前面的三角形圖標。你會看到:框架

            UIKit.framework,Foundation.framework, 和CoreGraphics.framework異步

       3. 點擊任意一個framework前面的三角,而後再點擊Headers前面的三角,能夠看到框架裏的頭文件。函數

        每一個框架對應IOS系統裏的一層,每層創建在它下面層的上面。應該儘可能使用上層的框架來代替下面的框架。更高層次的框架是對底層框架基於對象的抽象。工具



iOS應用程序基於FoundationUIKit框架

       在你開發程序時,主要使用框架就是Foundation和UIKit,由於它們包含了你須要的大部分東西。學習

Foundation框架爲全部的應用程序提供基本系統服務

        你的應用程序,UIKit和其它的框架都是創建在Foundation框架上面的。Foundation框架是用Object-C對Core Foundation框架裏許多特性的封裝。

       使用Foundation能夠:

  • 建立和管理集合,好比數組和字典
  • 訪問存儲在應用程序裏的圖片和其它資源
  • 建立和管理字符串
  • 提交和接收通知
  • 建立日期和時間對象
  • 自動發現IP網絡上的設備
  • 操做URL流
  • 執行異步代碼

      你已經在《Your First iOS App》裏使用到了Foundation框架。好比,你使用一個NSString類的實例存儲用戶輸入的userName。你還使用了Foundation框架的initWithFormat方法建立了一個字符串。

UIKit框架提供建立基於觸摸用戶界面的類


      全部的iOS應用程序都基於UIKit,你不能是應用程序脫離這個框架。UIKit提供了在屏幕上繪製的機制,捕獲事件,和建立通用用戶界面元素。UIKit也經過管理顯示在屏幕上的組件來組織複雜的項目。

      使用UIKit能夠:

  • 構建和管理你的用戶界面
  • 捕獲觸摸和基於移動的事件
  • 呈現文字和web內容
  • 優化你的多任務程序
  • 建立定製的用戶界面元素
     在《YouFirst iOS App Tutorial》裏,你也使用到了UIKit。當你仔細查看程序是怎麼運行起來的時候,你會看到UIApplicationMain函數建立一個UIApplication類的實例,這個實例會捕獲進來的用戶事件。你實現UITextFieldDelegate協議,而後在用戶按下Done時隱藏鍵盤。實際上,你是在使用UIKit建立用戶界面上的UITextField, UILabel,和UIButton類。


你須要知道的其它重要的框架


Core Data , Core Graphics, Core Animation,和OpenGLES框架都是高級的技術。因此這些框架對於你開發應用程序也是很重要的,它們都須要時間去學習和掌握。

 

Core Data框架管着理應用程序數據模型

         Core Data提供對象的管理,使用Core Data,你能夠建立模型對象,並管理這些對象。你管理這這些對象間的聯繫並修改數據。Core Data提供的內建SQLlite技術能夠高效的管理數據。

         使用Core Data能夠:

  • 在庫裏存儲和接收對象
  • 提供基本的undo/redo
  • 自動驗證屬性值
  • 過濾、分組和優化內存中的數據
  • 用[NSFetchedResultsController]管理表視圖中的結果
  • 支持基於文檔的應用程序

Core Graphics框架幫助你建立圖形

       高質量的圖形對於全部的iOS應用程序都是很重要的。在iOS中最簡單且最快捷的建立圖形的方式是使用UIKit框架提供的基於預渲染圖形的視圖和控件,而後讓UIKit和iOS完成繪製。可是當你須要建立複雜的圖形時,Core Graphics則提供了更底層的庫來幫助你。

       使用Core Graphics能夠:

  • 建立基於路徑的繪圖
  • 抗鋸齒渲染
  • 添加梯度、圖片和顏色
  • Use coordinate-space transformations.
  • 建立、顯示和分析PDF文檔

Core Animation容許你建立高級的動畫和虛擬效果

           UIKit提供創建在Core Animation之上的動畫。若是你須要比UIKit能力更高級的功能,能夠直接使用Core Animation。Core Animation接口包含在Quartz Core框架裏。使用Core Animation能夠建立嵌套的對象,而且能夠對它們操做、旋轉、縮放和轉換。使用Core animation,你能夠建立動態的用戶界面而不用使用更底層的圖形API,如OpenGL ES。

           使用Core Animation能夠:

  • 建立定製動畫
  • 添加定時函數和圖形
  • 支持幀動畫
  • Specify graphical layout constraints.
  • Group multiple-layer changes into anatomic update.

OpenGL ES 框架提供2D和3D繪圖工具

OpenGL ES支持2D和3D繪圖,Apple的OpenGL ES實現經過硬件提供了高速的全屏遊戲式的應用程序。

           使用OpenGL ES能夠:

  • 建立2D和3D圖形
  • 建立更復雜的圖形,好比數據虛擬化、模擬飛行,或者視頻遊戲
  • 訪問底層圖形設備

根據須要向項目中添加其它框架

           還有許多框架能夠添加到你的程序裏。當你決定使用一個框架但項目裏卻沒有引入這個框架時,你就須要將它加入到你的項目裏。



將別的框架添加到工程裏

    1 打開工程

    2 點擊項目名,顯示project editor

    3 在TARGETS列表中選中要添加框架的工程

    4 點擊project editor頂部的Build Phases

    5 點擊Link Binary With Libraries前面的三角形打開這個分組

    6 經過點擊添加(+)來添加一個框架

    7 在列表中選擇一個框架,而後點擊Add按鈕

原文連接:http://blog.csdn.net/ahopedog/article/details/7416837

相關文章
相關標籤/搜索