一個Activity中多個Fragment,個別fragment實現沉浸式狀態列
阿新 • • 發佈:2018-11-16
如上圖,同一個activity(NoActionBar)有多個fragment的情況下,只有"我的"模組需要設定為沉浸式的狀態列,而其他fragment則不需要設定。實現程式碼如下:
private int oldSystemUiVisibility; private View decorView; //初始化 decorView = getWindow().getDecorView(); //設定為透明狀態列 if (Build.VERSION.SDK_INT >= 21) { oldSystemUiVisibility = decorView.getSystemUiVisibility(); int option = View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE; decorView.setSystemUiVisibility(option); getWindow().setNavigationBarColor(Color.TRANSPARENT); getWindow().setStatusBarColor(Color.TRANSPARENT); } //取消設定透明狀態列 if (Build.VERSION.SDK_INT >= 21) { decorView.setSystemUiVisibility(oldSystemUiVisibility); }