我是一個新的iphone應用程序開發人員。我想知道視圖和viewcontroller之間有什麼區別。視圖和視圖控制器
視圖和視圖控制器
回答
UIView類定義了屏幕和用於管理該區域中的內容的界面 上的矩形 區域。 在運行時,視圖對象處理其 區域中任何內容的 呈現,並且還處理與 內容的任何交互。 UIView類本身 提供了基本的行爲,用於填充其背景顏色爲 的矩形區域。更復雜的內容可以通過繼承UIView和 來實現必要的圖形和 自己的事件處理代碼。 UIKit框架還包括一組可以使用的 標準子類,其中 的範圍從簡單按鈕到複雜 表。例如,UILabel對象 繪製文本字符串,而UIImageView對象繪製圖像。
由於您的應用程序與用戶主要通過查看 對象交互 ,因此這些對象具有數字 的責任。這裏僅僅是幾個 :
繪圖和動畫視圖繪製使用 技術,如UIKit中,核心 圖形和OpenGL ES在其矩形區域 內容。某些視圖 屬性可以動畫爲新的 值。佈局和子視圖管理 視圖可能包含零個或多個 子視圖。每個視圖將其自己的 默認調整大小行爲定義爲關聯 到其父視圖。視圖可以根據需要手動更改其子視圖的大小和位置 。事件 處理視圖是應答者,並且可以 處理由UIResponder類定義的觸摸事件和其他事件 。 A 視圖可以使用addGestureRecognizer: 方法來安裝手勢識別器 來處理常見手勢。
UIViewController類提供 基本觀點的管理模式 的iPhone應用程序。基本的 視圖控制器類支持關聯視圖的 演示文稿,支持管理模式視圖的 和支持將響應 中的視圖旋轉到設備方向更改的 。 子類,如 UINavigationController和 UITabBarController提供額外的 行爲來管理視圖控制器的複雜 層次結構和 視圖。
您可以使用每個實例 UIViewController來管理視圖 層次結構。典型的視圖層次結構 由根視圖 - 對 的引用組成,該視圖在此類的視圖 屬性中可用 - 通常爲一個 或更多子視圖,其中顯示實際的 內容。在iPhone和iPod touch上, 根視圖通常會填滿整個屏幕,但在iPad上,此視圖可能只填充 屏幕的一部分。在兩個 的情況下,視圖控制器是 負責管理整個 視圖層次結構,包括所有 子視圖。
視圖控制器緊緊地綁定到 他們管理的視圖和參與 響應器鏈用於處理 事件。視圖控制器是 UIResponder類的 自己的後代和插入 到 管理根視圖和它的父, 其通常屬於不同的 視圖控制器之間的響應鏈。如果視圖 控制器的視圖不處理 事件,則視圖控制器本身具有 可選項,用於在將事件傳遞到 超級視圖之前處理事件 。
UIViewController類與 一起使用應用程序的窗口來處理 設備方向更改。如果 視圖控制器支持新 取向(通過其 shouldAutorotateToInterfaceOrientation的 返回值確定: 方法),它動畫從當前位置到 一個新的過渡 。作爲此更改的一部分,它 也適用於 層次結構中視圖效果的任何大小調整規則 。如果要將 更改爲您的視圖層次結構作爲 方向更改的一部分,則可以將UIViewController的 方法重寫爲 以實現您的更改。關於你需要 覆蓋的方法 信息,請參見「處理視圖 旋轉。」
視圖控制器是 的大多數iPhone應用 設計的根本。後面的部分提供了有關使用 UIViewController類的方法和屬性的基本信息。有關使用視圖 控制器構建和管理您的 應用程序的用戶界面的其他信息,請參閱查看 iOS編程指南。
A UIViewController
instance manages a hierarchy of UIView
instances.
閱讀上體現大多數iOS應用設計的Model-View-Controller pattern。
@Siju:如果這回答你的問題,你應該接受答案。 – dasdom 2011-04-26 10:34:23
您是否熟悉模型 - 視圖 - 控制器模式?在開始iPhone開發之前,您應該熟悉它。我推薦本書Cocoa Design Patterns。相信我,它將長期幫助很多。
視圖控制器 - 主屏幕
視圖 - 組件,它可以添加到視圖控制器
- 1. 滑動視圖和視圖控制器
- 2. 複合視圖和視圖控制器
- 3. 關閉父視圖控制器和子視圖控制器
- 4. 初始視圖控制器和選項卡視圖控制器
- 5. 視圖控制器和SegmentedControl
- 6. MVC3控制器和視圖
- 7. 控制器,視圖和accep_nested_attributes_for
- 8. 如何顯示容器視圖視圖控制器和隱藏容器視圖視圖控制器
- 9. 使用視圖控制器既作爲模式視圖控制器和作爲標籤欄視圖控制器
- 10. 在拆分視圖控制器中調整主視圖控制器和詳細視圖控制器的大小?
- 11. 視圖控制器
- 12. 視圖控制器
- 13. 試圖視圖控制器
- 14. 使視圖控制器的視圖NSVisualEffectsView
- 15. 瀏覽iPhone視圖/視圖控制器
- 16. 訪問視圖控制器的視圖
- 17. 視圖控制器的視圖屬性
- 18. 使用視圖控制器子視圖
- 19. 表視圖視圖控制器
- 20. 從另一個視圖控制器關閉視圖控制器
- 21. 登錄視圖控制器在模態視圖控制器
- 22. 從視圖控制器顯示新的視圖控制器
- 23. 在當前視圖控制器下加載視圖控制器
- 24. 有多少視圖控制器太多視圖控制器?
- 25. 視圖控制器上的表視圖控制器
- 26. 設置根視圖控制器的模態視圖控制器
- 27. 從其他視圖控制器刷新視圖控制器
- 28. 模型視圖控制器中的模型視圖控制器
- 29. 從子視圖控制器推動視圖控制器
- 30. 從子視圖控制器呈現主視圖控制器
的可能重複http://stackoverflow.com/questions/4669783/what-is-the-difference-between-view和viewcontroller-in-iphone http://stackoverflow.com/questions/3658727/difference-between-view-and-view-controller-technically – Jhaliya 2011-04-26 10:26:42
重複http://stackoverflow.com/questions/4669783/what- is-the-difference-between-view-and-viewcontroller-in-iphone – 2011-04-26 10:32:11