簡體   English   中英

Android-Honeycomb或ICS完全全屏顯示

[英]Android - Honeycomb or ICS Go Completely Full Screen

ICS或Honeycomb中有沒有辦法使屏幕全屏顯示? 我希望系統用戶界面完全消失! 目前我正在做的是:

    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
                            WindowManager.LayoutParams.FLAG_FULLSCREEN);

    setContentView(R.layout.main);
    getWindow().getDecorView().setSystemUiVisibility(View.STATUS_BAR_HIDDEN);

但這導致狀態欄被真正的暗點取代! 我希望它完全消失! 舉例來說,我想播放視頻或顯示占據整個屏幕的圖片。 我認為狀態欄會在用戶互動時恢復正常,但是我需要在沒有用戶互動時將其完全消失。

上面的代碼。 我得到以下外觀:

隱藏狀態欄,由暗點代替

我希望暗點也消失,並且我的視頻/圖像完全全屏顯示。

這在Honeycomb中是不可能的,但已在API v14中添加。 采用:

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);

在此處查看更詳細的答案(盡管我將使用Build.Version.SDK_INT檢查而不是建議的基於反射的檢查來獲得支持):

隱藏ICS后台任務切換按鈕

我得到的最后信息是,您可以使用黑色膠帶將其覆蓋。 這就是切特·海瑟的建議。 從53分鍾開始觀看此Google IO 2011會話問答

正如先前的海報所建議的那樣,如果不生根設備並執行一些較臟的進程終止操作,這是完全不可能的。 原因是新的硬件(例如平板電腦)可能沒有用於導航的硬件按鈕-因此,通過隱藏這些按鈕,用戶將無法執行應被保證能夠執行的操作,例如轉到主屏幕或訪問設備信息。 無論您是否同意這種推理,例如API。

您需要SYSTEM_UI_FLAG_HIDE_NAVIGATION 請記住,由於軟導航按鈕是設備體驗的關鍵,因此只有在用戶進行一些交互之前,這只會隱藏按鈕。 如果您想永久隱藏它們,那么根除設備(如其他人所建議的)是唯一的方法。

從API 14 Ice Cream Sandwich開始添加該標志。在14之前,已在具有相似功能的API 11 Honeycomb中添加了STATUS_BAR_HIDDEN標志。 在此之前,不存在軟導航按鈕,因此全屏模式完全由Themes (特別是Theme.NoTitleBar.Fullscreen )處理。

采用:

if( Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH )
    mBaseLayout.setSystemUiVisibility( View.SYSTEM_UI_FLAG_HIDE_NAVIGATION );
else if( Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB )
    mBaseLayout.setSystemUiVisibility( View.STATUS_BAR_HIDDEN );

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM