關於視窗和視圖

來源:互聯網
上載者:User

在ios中,是用windows和views來將應用程式的內容展示在螢幕上的。windows本身沒有可視的內容但是給應用程式的views提供了一個基本容器。views定義了windows中用來填充內容的一部分。例如,你可能會想用views來顯示圖片,文本,形狀或者一些它們的組合。你也可以用views來組織和管理其他views。

每個應用程式都至少有一個window和一個view來展示內容。UIKit和其他系統架構定義了用於展示內容的views。這些包括了從簡單的按鈕和文字標籤到表格視圖,選取器視圖和滾動視圖。當這些視圖不能滿足你的需要時,你也可以定義自己的views,同時自己管理views的繪畫和事件處理。

預覽


視圖管理著你的應用的可視內容

一個view是一個UIView類(或者它的子類)的執行個體,它管理著應用的視窗中的一塊矩形地區。views負責繪畫內容,處理多點觸控事件和管理子視圖的布局。繪畫使用一些圖形技術,例如Core Graphics,OpenGL ES或者UIKit,來繪製視圖裡的各種形狀映像和文本。一個view通過手勢識別或者直接處理觸屏事件來響應在本身發生的觸屏事件。在視圖層次中,父視圖負責控制子視圖的定位和大小,該過程也可以動態進行(運行時處理)。這樣允許你的視圖來適應介面翻轉和動畫等改變條件。


視窗決定視圖顯示的座標

一個window是一個UIWindow類的執行個體,同時處理著應用程式的使用者介面的整體展示。視窗與視圖及其視圖控制器協作著管理與整個視圖層次的互動。大部分時間,應用的視窗不會改變。一旦被建立,視窗會保留原樣,只有其顯示的視圖會改變。每個應用都至少有一個視窗用於將應用的使用者介面顯示在裝置的主畫面上。如果連結著外部裝置,應用可能會建立第二個視窗將內容展示在螢幕上。

動畫提供了介面變更的可視反饋給使用者

動畫提供了視圖層次變更的可視反饋給使用者。系統定義了標準的動畫來展示不同組別的視圖之間的過渡。然而,視圖中有很多屬性可以直接用作動畫處理。例如,你可以改變視圖的透明度,螢幕上的位置,大小,背景顏色或者其他屬性。如果你直接使用視圖的底層架構Core Animation的對象,你可以製作更多的動畫。

Interface Builder扮演的角色

Interface Builder是一個可以圖形化地構建和配置應用程式視窗和視圖的程式。使用Interface Builder,你可以組裝你的視圖,把它們放置在一個nib 檔中,它是一個儲存了視圖和其他對象的靜態版本的資源檔。當你在運行時載入一個nib檔案時,裡邊的對象被重新構造成代碼可以控制的對象。

Interface Builder極大的簡化了構造使用者介面的工作。ios也支援Interface Builder和nib檔案,所以它只需要一點點工作就可以將nib檔案合并到應用程式的設計中

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.