# Android System UI [Control the system UI visibility](https://developer.android.com/training/system-ui) https://developer.android.com/training/system-ui [Android 8.0 SystemUI(三):一说顶部 StatusBar](https://cloud.tencent.com/developer/article/1186839) [How to disable status bar click and pull down in Android?](https://stackoverflow.com/questions/29969086/how-to-disable-status-bar-click-and-pull-down-in-android) ## System UI android boot step 以下為android4.1為例 1. 當SystemServer對核心系統服務(包括StatusBarManagerService* )進行“完成”操作時,它將通知第三方代碼系統已準備就緒,並在軟件包**中啟動系統UI(第870行)或更準確的說是SystemUIServicecom.android.systemui 2. SystemUIService只是一個Android 應用程序組件,其onCreate()方法啟動/初始化UI組件並將對組件的引用存儲在類型mServices[]數組中SystemUI。第一個元素(mServices[0])是狀態欄或系統欄(狀態+導航欄)。 3. BaseStatusBar,抽像SystemUI類的實現,做了一些UI的工作(例如,向中添加視圖WindowManager等)。此外,它聲明了一系列與createAndAddWindows()子類(例如)一起實現的與UI相關的抽象方法(例如)PhoneStatusBar。 4. 狀態欄和導航欄不是由單個視圖組成。這樣子BaseStatusBar的PhoneStatusBar,TabletStatusBar等***處理多類基本上都是從子類View,其繪圖(也是如此狀態欄的繪圖)發生在onDraw()方法。 5. 重要說明:在系統啟動時,狀態欄(和帶有軟件的導航欄)返回的所有視圖(並且Activity帶有引導動畫的退出)直到啟動器的(帶有android.intent.category.HOME)的onResume()方法返回(並且引導動畫退出)時,狀態欄(和狀態欄)才可見。已經佈置好了。