2011-11-22 30 views
7

創建一個空白的xib文件後,似乎我們可以拖動UIWindow或UIView來覆蓋整個屏幕。我的問題是兩者之間的實際區別是什麼,以及在什麼情況下我們應該使用這兩者之一?UIWindow和UIView的區別

+0

我們如何可以拖動的UIWindow到空白'.xib'文件?我無法在Xcode中這樣做。 –

回答

19

Windows本身沒有任何可見內容,但爲應用程序的視圖提供了一個基本的容器。視圖定義了您想要填充某些內容的窗口的一部分。通常,iOS應用程序中只有一個窗口。

About Windows and Views

+4

另一種想法是,一個窗口永遠不會有超級視圖。這是位於視圖層次結構頂部的東西。 – jemmons

+0

感謝您的答案和鏈接是非常有用的... – Stanley

+1

從技術上來說,一個窗口*不*覆蓋整個屏幕。窗口的* view *會。所以想一下一個'UIView'作爲屏幕的控制部分:繪製它等等。窗口只是一個容器。 –

8

這不是一個或任何一種事情。你的應用程序必須有一個UIWindow實例,它是你呈現的UIView實例的容器。

應用程序可以從nib文件加載UIWindow實例,也可以通過編程方式創建它。看一些示例代碼,看看它是如何完成的。

+0

感謝您的回答,但是每個項目應該只有一個UIWindow是真的嗎? – Stanley

+0

@Stanley通常情況就是這樣,是的。然而,這不是強制性的,而是普遍的。 – Till

+2

例如,有兩種情況是當你想處理外部屏幕時。 – jbat100

相關問題