簡體   English   中英

如何在地圖視圖中獲取透明狀態欄?

[英]How to i get transparent status bar in map view?

請參閱(抱歉SOF不允許我上傳圖片)

這就是我要實現的目標。 我有一個地圖視圖,我希望狀態欄是透明的,以使地圖看起來像在狀態欄的文本下方(例如在uber應用中)。 我用

 getWindow().setFlags(
    WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS,
    WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS
    /*,WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS*/);

這個標簽來做到這一點。 但是問題是我在底部也有4個按鈕(例如底部導航欄)。 當我使用該標簽時,這些按鈕位於導航欄(軟件鍵)的后面。

我認為,如果我使用2種不同的布局,它將可以正常工作,例如一種布局用於NavBar的電話,一種布局用於帶硬件鍵的電話。 但我只是不知道如何。 我已經嘗試使用此功能,但是它無法正常工作或執行錯誤,請幫助。

public boolean hasNavBar (Resources resources) {
        int id = resources.getIdentifier("config_showNavigationBar", "bool", "android");
        return f= id > 0 && resources.getBoolean(id);
    }

然后使用if(f == true),else更改布局和Java文件,但這始終為false。

試試這個代替LAYOUT_NO_LIMITS

Window w = getWindow();
w.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
w.setStatusBarColor(0x00000000);

您還需要確保要在狀態欄后面的視圖android:fitsSystemWindows設置為false。 我不得不嘗試這些布局標志的幾種不同版本,這對我來說是有用的。

沒有導航鍵的手機不需要其他布局,布局將填滿整個屏幕,直至軟導航欄,或者如果手機沒有導航屏,則將其一直填充到底部。

暫無
暫無

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

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