2016-09-01 90 views
5

我的要求是一個完全透明的狀態欄,動態地在同一個activity中改變狀態欄的顏色。adjustPan不能與FLAG_LAYOUT_NO_LIMITS配合使用

對於這一點,我添加getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);

和style.xml

<item name="android:windowTranslucentNavigation">true</item> 
<item name="android:windowTranslucentStatus">false</item> 

所以它工作正常,但我需要的軟鍵盤打開時調整畫面。 所以我嘗試android:windowSoftInputMode="adjustPan|adjustResize"但屏幕沒有調整大小或滾動。任何人都可以幫助我。

回答

2

使透明和動態改變顏色像這樣不要設置標誌FLAG_LAYOUT_NO_LIMITS然後檢查當鍵盤打開時的屏幕。

 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
      Window window = getWindow(); 
      window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); 
      window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); 
      window.setStatusBarColor(getResources() 
        .getColor(R.color.themeToolbarColor)); 
     } 
+0

需要API級別21。 – Khan

相關問題