iOS - 關于window

作者:Mitchell 

一、 簡介

  • 每個應用程序至少需要一個窗口,一個UIWindow類的實例,起哄的一些包含不止一個窗口,一個窗口對象有許多的職責:
    • 包含了應用可見的內容
    • 它在對你的視圖和其他應用對象分發(fā)點擊事件上扮演了重要角色
    • 它協(xié)助你應用程序的試圖控制器去確定方向的改變
  • iOS中,窗口沒有文字標題,關閉的盒子和其他可見的裝飾品。一個窗口僅僅是一個包含了一個或者多個視圖的黑色包含物。另外,應用程序不通過展示新的窗口來改變它們所展示的內容。當你想要去改變展示的內容的時候,你應該改變你最上面的視圖而不是去改變窗口。
  • 大多數(shù)iOS應用僅僅在它們的生命周期內創(chuàng)建或使用一個窗口。這個窗口橫跨了整個設備的主屏幕,并且在應用生命周期的早期被main的nib文件讀取或者代碼創(chuàng)建。然而,如果一個程序支持一個額外的視頻展示,它能夠創(chuàng)建一個額外的窗口去展示額外的內容。所有其他的窗口都是被系統(tǒng)創(chuàng)建的,而且都是為了應對特殊的事件,比如接入了一個電話。

二、 程序中一般那些是窗口的控件

  • 狀態(tài)欄
    • 注意:如果打印application.windows是無法狀態(tài)欄的窗口的,因為狀態(tài)欄的窗口是不歸我們的應用所有。
  • 鍵盤

三、窗口的優(yōu)先級

  • 我們可以通過設置窗口的windowLevel來設置窗口的優(yōu)先級,也就是誰上誰下的關系,優(yōu)先級如下:UIWindowLevelAlert > UIWindowLevelStatusBar > UIWindowLevelNormal
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容